автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Теоретические и методологические основы высокоуровневого проектирования встраиваемых вычислительных систем
Автореферат диссертации по теме "Теоретические и методологические основы высокоуровневого проектирования встраиваемых вычислительных систем"
004610086
На правахцукописи
Платунов Алексей Евгеньевич
ТЕОРЕТИЧЕСКИЕ И МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ ВЫСОКОУРОВНЕВОГО ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ
Специальность: 05.13.12 - Системы автоматизации проектирования (приборостроение)
АВТОРЕФЕРАТ диссертации на соискание ученой степени доктора технических наук
- 7 ОПТ 2010
Санкт-Петербург - 2010
004610086
Работа выполнена в Санкт-Петербургском государственном университете информационных технологий, механики и оптики
Официальные оппоненты:
доктор технических наук, профессор Гатчин Юрий Арменакович
доктор технических наук, с.н.с. Манойлов Владимир Владимирович
доктор физико-математических наук, профессор Терехов Андрей Николаевич
Ведущая организация:
ФГУП ОКБ «Электроавтоматика» (г.Санкт-Петербург)
Защита состоится 19 октября 2010 г. в 15.50 часов
на заседании диссертационного совета Д.212.227.05 при Санкт-Петербургском государственном университете информационных технологий, механики и оптики по адресу: 197101, г. Санкт-Петербург, Кронверкский пр., д. 49.
С диссертацией можно ознакомиться в библиотеке Санкт-Петербургского государственного университета информационных технологий, механики и оптики
Автореферат разослан 16 сентября 2010 г.
Ученый секретарь диссертационного совета
Поляков В.И.
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы. Стремительный рост потребности во встраиваемых вычислительных системах (ВсС) различного назначения заставляет разработчиков активно совершенствовать методы и средства проектирования. Встраиваемые (или встроенные) системы и сети (embedded systems & networks) можно определить как специализированные (заказные) микропроцессорные системы, непосредственно взаимодействующие с объектом контроля или управления и объединенные с ним конструктивно.
Активно растет доля ВсС со сложной внутренней организацией, которая проявляется в таких особенностях, как многопроцессорная гетерогенная архитектура, распределенный характер вычислений, широкий диапазон потенциально доступных разработчику вычислительных ресурсов. Большинство сегодняшних ВсС составляют распределенные информационно-управляющие системы (РИУС), в которых доля технических решений, характерных для иных классов вычислительных систем (ВС), не является доминирующей. Это позволяет сделать вывод об актуальности поиска и развития всего многообразия технических решений в области ВсС (а не только ограниченного их числа в рамках ряда канонических аппаратно-программных платформ), а также методов и средств их проектирования.
Процесс создания ВсС характеризуется высокой сложностью. Это определяется сочетанием таких условий проектирования, как нестандартность задачи, требование технической оптимальности решений (модель ограниченных вычислительных ресурсов), минимальные временные и финансовые бюджеты разработки, присутствие большого числа дополнительных требований и ограничений (надежность, ограничения реального времени, тяжелые условия эксплуатации и многое другое).
Ключевой особенностью создания ВсС следует считать необходимость комплексного проектирования, охватывающего практически все уровни организации ВС. Однако сегодня в достаточной степени формализованы и автоматизированы лишь поздние и часть средних этапов маршрутов проектирования.
Таким образом, первоочередное значение приобретает развитие методов и средств высокоуровневого (архитектурного, HLD - High Level Design) проектирования ВсС, где центральное место занимает формирование цельного взгляда на организацию всех фаз вычислительного процесса, как собственно на цель проектирования.
Активные работы в данном направлении проводят отечественные коллективы под руководством А.Н. Терехова, В.В. Топоркова, А.К. Кима, специалисты ИСП РАН, ПОМИ им. В.А.Стеююва, СПбГУ ИТМО. Из зарубежных специалистов в первую очередь следует отметить работы А. Санджованни-Винсентелли, Е. Ли, А. Феррари, Г. Мартина, Г. Axa, А. Джеррайи.
Создание четкой системы понятий архитектурного уровня позволит разработчику ВсС эффективно работать не на уровне примеров реализаций, а на уровне принципов организации ВС/вычислительного процесса. Важнейшей задачей является создание системы архитектурных абстракций, в которых не противопоставляются аппаратная и программная составляющие ВС, но при этом охватываются все уровни технических решений.
Практическая польза от подобной формализованной системы понятий состоит в возможности развития на ее основе общей теории и методологии проектирования ВсС, создания эффективных методик и САПР архитектурного и сквозного проектирования ВсС.
Следует признать, что в подавляющем большинстве коллективов проектировщиков ВсС сегодня недостаточно высоко оценивается роль и трудоемкость этапов высокоуровневого проектирования, отсутствует адекватный технический язык для общения на этом уровне. Они оперируют лишь конкретными реализациями вычислительных механизмов (то есть «ассемблерными кодами», в которых трудно или невозможно проследить концептуальные моменты и решения). Мери Шоу в статье «Мы можем обучать информатике лучше» пишет: «Давайте организуем наши курсы вокруг идей, а не вокруг артефактов. Это сделает наши цели более ясными как для студентов, так и для преподавателей. Машиностроительные институты не преподают проектирование бойлера, они преподают термодинамику. В то же время, как минимум два га основных курсов по информатике «Создание компиляторов» и «Операционные системы» являются артефактными динозаврами программирования». [Mary Shaw. We can teach software better. Computing Research News 4(4);2-12, September 1992]. С момента опубликования статьи ситуация кардинально не поменялась.
Система вычислительных архитектурных абстракций может привнести эффективный язык общения б область проектирования ВсС, повысить «прозрачность» разработок, резко ускорить развитие вычислительных архитектур. Однако для этого необходимы усилия не только со стороны действующих разработчиков вычислительной техники, но и поддержка высшей школы в части модернизации учебного процесса на профильных кафедрах университетов.
Целью работы является создание методологической и теоретической базы высокоуровневого автоматизированного проектирования встраиваемых вычислительных систем, основывающейся на системе архитектурных вычислительных абстракций. Это обеспечит развитие методов и средств архитектурно - структурного проектирования в комплексе с формированием сценариев и инфраструктуры процесса проектирования.
Задачи исследований. Для достижения указанной цели в работе ставились и решались следующие задачи.
1. Постановка проблемы фрагментарности методов и средств высокоуровневых этапов проектирования для ВсС, критичных к качеству архитектурных решений. Поиск возможностей повышения качества
проектирования ВсС и обоснование необходимости использования вычислительных архитектурных абстракций как основного инструмента повышения эффективности процесса проектирования.
2. Разработка системы абстракций, которая на этапе архитектурного проектирования адекватно отражает вычислительные и невычислительные аспекты ВсС, учитывает сценарий н инфраструктуру процесса проектирования. Формирование в рамках аспектной модели проектирования ВсС критериев надежности и качества проектирования архитектуры ВсС.
3. Разработка методики высокоуровневого проектирования ВсС, в том числе:
• разработка метода поиска архитектурных решений ВсС, обеспечивающего эффективный анализ и синтез вариантов организации вычислительного процесса ВсС;
■ разработка метода создания корректного и детального архитектурного представления ВсС, выступающего в качестве исходных спецификаций для этапа реализации проекта;
• развитие моделей вычислений распределенных ВсС;
4. Разработка методики формирования инструментальной инфраструктуры проекта ВсС на основе декомпозиции вычислительного процесса по фазам проектирование / конфигурирование / исполнение жизненного цикла ВсС.
5. Создание методических основ внедрения технологий и средств высокоуровневого проектирования ВсС на базе вычислительных архитектурных абстракций и аспектной модели в научно-производственных коллективах и профильных высших учебных заведениях.
Методы исследования. Теоретические и практические исследования базируются на комплексном использовании положений линейной алгебры, теории вероятностей, теории множеств, формальной и темпоральной логики, теории конечных автоматов, теории графов, теории взаимодействия открытых систем, методов системного и функционального анализа, функционального и объектно-ориентированного программирования и проектирования, имитационного моделирования, структурно-функционального описания аппаратуры.
Научная новизна работы состоит в теоретическом обобщении и решении научной проблемы, имеющей важное народнохозяйственное значение в области автоматизации проектирования встраиваемых вычислительных систем. В результате исследований автором получены следующие основные научные результаты:
1. Предложены оригинальные базовые определения ВсС и платформ, классификация ВсС, постановка задач проектирования в области ВсС на основе системы архитектурных абстракций.
2. Разработана оригинальная система вычислительных абстракций архитектурного уровня, определяющая стратегию и маршрут процесса проектирования ВсС.
3. Разработана аспектная методика проектирования ВсС, базирующаяся на созданной системе архитектурных абстракций и введенных понятиях инфраструктуры проекта и инфраструктуры создаваемой целевой системы. Разработаны методы поиска архитектурных решений ВсС и методы представления архитектуры ВсС для этапа реализации в рамках аспектной методики.
4. На основе исследования критически важных аспектов проектирования в рамках предложенной модели введено понятие единого проектного пространства архитектуры ВсС, включающее наряду с другими такие важнейшие координаты как реконфигурируемость, совокупность фаз организации вычислительного процесса (включая проектирование, конфигурирование и исполнение), распределение инструментальных компонент. На этой основе созданы методы организации вычислительного процесса ВсС и формирования инструментальной инфраструктуры, в том числе, для распределенных встраиваемых систем.
5. Предложены и исследованы новые модели вычислений, составляющие класс объектно-событийных моделей. Они обеспечивают эффективное представление информационной и управляющей компонент, в первую очередь, распределенных ВсС на этапах архитектурного, структурного, логического проектирования.
6. Разработана типовая инструментальная цепочка проектирования ВсС на базе средств объектно-событийного моделирования разрабатываемой системы. В рамках инструментального аспекта ВсС предложен принцип совместного проектирования инструментальной и целевой системы.
Основные защищаемые положения диссертационной работы
включают:
1. Принцип использования архитектурных абстракций в проектировании ВсС и систему абстракций, важнейшие из которых: аспект проектирования, архитеюурная платформа, архитектурный агрегат, вычислительный механизм.
2. Перечень критически важных аспектов проектирования ВсС в рамках аспектной модели вычислительной архитектуры.
3. Аспектную методику проектирования ВсС, в рамках которой введено понятие архитектурной модели ВсС с абстрактным, виртуальным, реализуемым уровнями ее конкретизации.
4. Понятие единого проектного пространства архитектуры ВсС и концепцию организации вычислительного процесса ВсС на фазах проектирования, конфигурирования и исполнения как единого процесса проектирования вычислительной системы с явным формированием и выбором общей архитектуры. В рамках данного подхода проектируются (выбираются) в комплексе такие компоненты ВсС, как макроархитектура, множество микроархитектур, инструментарий, системное программное обеспечение и другие, которые традиционно разделяются разработчиками на
изолированные (в контексте принятия концептуальных, архитектурных решений) части.
5. Принцип совместного проектирования целевой ВсС и ее инструментальной инфраструктуры, инструментальная модель ВсС.
6. Состав учебных модулей и базовые принципы подачи учебного материала для подготовки специалиста в области высокоуровневого проектирования сложных ВсС.
Практическая ценность. Полученные результаты повышают надежность и качество ключевых принимаемых проектных решений при создании ВсС за счет расширения пространства поиска архитектурных решений, нового механизма их анализа, большей прозрачности процесса проектирования в целом.
Разработчик получает инструмент комплексного представления продуктов этапа высокоуровневого проектирования ВсС, что обеспечивает высокую степень их повторного использования и эффективный контроль фазы реализации проекта.
В значительной степени решается проблема семантического разрыва областей компетенции специалистов по проектированию аппаратной и программной составляющих ВсС на основе понятия вычислительного механизма и определения встроенного программного обеспечения как совокупности компонент конфигурирования/программирования на всех этапах организации вычислительного процесса ВсС.
Конкретные рекомендации и разработанные инструментальные средства обеспечивают внедрение предлагаемой автором парадигмы проектирования ВсС в научно-производственных коллективах и в учебный процесс профильных высших учебных заведений.
Кроме того, в результате исследования разработано и опробовано значительное число новых технических решений (вычислительных механизмов) в части аппаратно-программной реализации ВсС, зафиксированных в виде вычислительных платформ, которые ориентированы на повторное использование.
Реализация результатов работы. Теоретические и практические результаты, полученные в диссертационной работе, использованы в научно-исследовательских и опытно-конструкторских работах, проводимых в СПбГУ ИТМО и в научно-производственной фирме «ЛМТ» (СПб, http://lmt.ifmo.ru), научным руководителем или ответственным исполнителем которых является автор. Часть из них перечислена ниже:
• «Разработка способов формального представления проектной информации для технологии сквозного проектирования встроенных вычислительных систем» (СПбГУ ИТМО, 2003-2007 гг.);
• Серия работ по созданию микропроцессорных систем прецизионного управления в составе нанотехнологических комплексов (ЗАО «НТ МДТ», в рамках ОКР «Разработка и освоение производства приборов и оборудования для нанотехнологии», 2003-2006 гг.);
• «Разработка шлюзов контроллерных сетей серии GW-ЕС» (ОАО «Приборный завод «Тензор», 2004 г.);
• «Разработка программируемых блоков TFK сбора информации и управления в составе лабораторных теплофизических измерительных комплексов» (СПбГУ НиПТ, 2004 г.);
• «Разработка предложений в комплексную программу создания Интеллектуальной транспортной системы в Санкт-Петербурге по направлению «Комплекс информационно-вычислительных средств ИТС Санкт-Петербурга» (ЗАО «НИПИ ТРТИ», 2005 г., в соответствии с «Концепцией создания ИТС в Санкт-Петербурге на 2005-2008 гг.»);
« Серия ОКР по созданию цифровых электронных модулей аналитико-технологических приборов по направлению «Разработка учебно-научной лаборатории для нанодиагностики и нанотехнологий на базе сканирующей зондовой микроскопии, спектроскопии и литографии» (ООО «НТ-СПб», 2006-2007 гг.);
«Разработка архитектуры и методики проектирования аппаратных и программных средств систем на кристалле, комбинирующих различные типы ядер и способы обработки информации» (СПбГУ ИТМО, 2009-2010 гг.).
Результатами НИОКР являются специализированные вычислительные платформы и комплексы технических средств, на основе которых серийно выпускается большое число прикладных систем и приборов. Среди них системы распределенной автоматики для железнодорожного (КТС «Тракт», КТС «Бриз») и судового (КТС АР3000) транспорта, для задач энергетики и ЖКХ (СУНО «Луч2», СУМЭ «ЛучЗ», АСКУЭ «Луч-ТС»); семейство прецизионных теплофизических приборов ИТС с уникальными контроллерами TFK нескольких версий. Производятся и развиваются семейства зондовых сканирующих микроскопов «НаноЭдьюкатор» (платформа L1C5091) и «МиниЛаб» (платформа ML).
Результаты работы использованы в учебных лекционных курсах, которые читались автором в СПбГУ ИТМО, в МИПК СПб ГИТМО (ТУ) и в ряде других организаций на протяжении более чем 30 лет. Автором создано четыре поколения учебно-лабораторного микропроцессорного оборудования, которое обеспечивает курсы по организации, проектированию и применению ВС общего назначения и ВсС. Сегодня семейство учебных контроллеров SDK используется более чем в 45 университетах РФ и Республики Беларусь по направлениям информатики, вычислительной техники и смежным специальностям.
Под руководством автора в рамках «Инновационной образовательной программы СПбГУ ИТМО» (Приоритетный национальный проект «Образование», 2007 - 2008гг.) создано и успешно развивается новое направление магистерской подготовки «Встроенные вычислительные системы», которое включает две специализации: 230100.68.31 «Проектирование встроенных вычислительных систем» и 230100.68.32
«Системотехника интегральных вычислителей. Системы на кристалле». Направление развивается в соответствии с программой развития СПбГУ ИТМО как Национального исследовательского университета, в частности, создана магистерская программа «Сетевые встроенные системы».
Развитием данной работы являются 7 успешно защищенных кандидатских диссертаций, выполненных аспирантами под руководством автора.
Практическое использование результатов диссертационной работы подтверждено соответствующими документами о внедрении.
Апробация работы. Основные результаты работы докладывались и обсуждались в 1979 - 2010 годах на следующих Всесоюзных, Всероссийских, Международных, региональных и отраслевых конференциях, семинарах и совещаниях: II Всесоюзном семинаре «Синтез управляющих устройств на основе микропроцессоров и однородных сред» (Рязань, 1979), Республиканском семинаре «Специализированные микропроцессорные системы» (Челябинск, 1981), межотраслевом семинаре «Применение микропроцессорного комплекта БИС К584 в разработке радиоэлектронной аппаратуры» (Минск, 1983), семинаре Рабочей группы по технологии программирования ГКНТ СМ СССР «Технология программирования микропроцессорной техники» (Брест, 1984), Всероссийской конференции «Микропроцессорные системы» (Челябинск, 1984), Всесоюзной конференции «ДИАЛОГ-84-МИКРО» (Ленинград, 1984), Координационном совещании по межвузовской целевой комплексной программе «Микропроцессоры и микроЭВМ» (Фрунзе, 1985), II Международной конференции «Информационные технологии на железнодорожном транспорте» (СПб., 1997), Í Всероссийской конференции «Компьютерные технологии в науке, проектировании, производстве» (Н.Новгород, 1999), VII Международной конференции «Региональная информатика 2000» (СПб., 2000), I Всероссийской конференции «Разработка электроники на заказ» (СПб., 2005), VII Всероссийской научно-практической конференции «Энергоэффективность систем жизнеобеспечения города» (Красноярск, 2006), Третьей международной научно-практической конференции «Исследование, разработка и применение высоких технологий в промышленности» (СПб., 2007), 1 и II Санкт-Петербургском конгрессе «Профессиональное образование, наука, инновации в XXI веке» (СПб., 2007, 2009), Международной конференции «Information and communication technologies in the 7 Framework Program of the EU. Russia — EU Cooperation» (Москва, 2008), Международной конференции «ICINCO - Networked embedded and control system technologies: European and Russian R&D cooperation» (Милан, 2009), Международной конференции «CIV EL-2009» (Москва, 2009), научной и учебно-методической конференции СПб ГИТМО (ТУ) - СПбГУ ИТМО (СПб., 1991 — 2010), а также на других конференциях и семинарах.
Публикации. По теме диссертации опубликованы 83 печатные работы, среди которых 18 статей в изданиях, включенных в список ВАК РФ, терминологический словарь, брошюра, б учебных пособий, более 30 статей в научно-технических журналах и сборниках, а также тезисы и тексты докладов на различных конференциях и семинарах. Список 49 основных работ приведен в конце автореферата.
Структура и объем диссертационной работы.
Диссертация состоит из введения, 5 глав, заключения, списка использованной литературы и приложения. Основной объем диссертации составляет 314 страниц, в том числе список литературы 168 наименований.
ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ
Во введении обосновывается актуальность темы, определены цель и задачи исследования, изложены научная новизна и практическая значимость работы, данные о ее апробации и реализации результатов, приведена структура диссертационной работы.
В первой главе обсуждается понятие и особенности ВсС, анализируется состояние и перспективы в области высокоуровневого проектирования ВсС. Демонстрируются предпосылки повышения уровня абстракции в методиках проектирования ВсС.
В своем развитии эта категория вычислительных систем прошла путь от информационно-управляющих систем, слабо связанных с объектом управления конструктивно, через локализованные встраиваемые системы, распределенные встраиваемые системы, и на сегодняшний день специалистами обсуждается такое понятие как киберфизические системы (КФС), когда в едином ключе рассматривается и объект управления и его встроенная вычислительная система. Показано, что в своем развитии электронная компонентная база, достигнув уровня цифровых систем и сетей на кристалле (СнК и СенК), по своим основным характеристикам приблизилась к отдельным классам ВсС, что позволяет рассматривать единые методы проектирования как непосредственно доя ВсС так и для систем и сетей на кристалле.
Отмечено, что как в плане определения категории ВсС, так и в вопросе их классификации нет четких критериев, формулировок и системы характеристик. Это приводит к ситуации «нишевого» проектирования в области ВсС, что искусственно сужает пространство поиска решений разработчиком до ограниченного набора шаблонных решений.
Показано, что на рынке востребованы все варианты проектирования ВсС по шкале «глубины погружения» в аппаратно-программную организацию системы:
• Прикладное программное обеспечение (ПО);
• Прикладное и системное ПО;
• Устройства сопряжения с объектом (УСО), прикладное, системное ПО;
• Аппаратура «центра», коммуникации, УСО, прикладное и системное ПО.
Проектирование ведется в рамках трех типовых сценариев: целевая ВсС; платформа ВсС, модификация существующей ВсС.
Проанализирован традиционный процесс проектирования ВсС и выделены недостатки:
• неформальное разбиение на аппаратную и программную части на начальном шаге;
• последовательное проектирование аппаратуры и программы;
• раздельное моделирование аппаратуры и программы;
■ ручная интеграция аппаратной и программной частей проекта;
компенсация выявившихся в процессе отладки ошибок за счет изменения программы.
Выделены основные тенденции в развитии процессов и средств проектирования ВсС, которые непосредственно связаны с увеличением удельного веса и усилением значения этапов архитектурного, функционального, логического проектирования:
• Повышение урозня абстракции проектирования;
• Широкое применение моделирования, методов формального анализа и верификации моделей;
• Выделение уровня абстрактного представления вычислительного процесса;
• Выделение технологий создания встраиваемого ПО (ВПО).
Перечисленные этапы проектирования сегодня составляют до 70% общего объема разработки ВсС и относятся к области высокоуровневого проектирования (НЬБ), центральным понятием которого следует считать абстрагирование - отвлечение в процессе анализа и синтеза ВсС от несущественных сторон, свойств, связей элемента или процесса с целью выделения их существенных, закономерных признаков.
Требования прикладной задачи
Варианты реализации 11
Вручную
Варианты реализации
Абстрактные модели вычислительного процесса
I
Автоматиз.
«Программные» описания HW/ SW
Дополнительныеурозни (виртуальные машины, ОСРВ, soft-процессоры,...) .
Конфигурационные образы (FPGA, ASIC, исп. образы ПО)
Варианты реализации
- Автоматиз.
Конечный продукт
Рис. 1. Маршрут проектирования ВсС.
На рис. 1 представлен упрощенный маршрут проектирования, характерный для ВсС, показано, что от того, насколько проектировщики могут расширять зону работы с абстрактными моделями вычислительного процесса и ВС в рамках всего маршрута проектирования кардинально зависит качество проектирования встраиваемых систем.
На сегодняшний день задачи этапа высокоуровневого проектирования ВсС группируются в шесть крупных блоков, покрывая фазу проектирования, и не затрагивая фазу реализации:
1. Концепция решения целевой задачи, исходные спецификации.
2. Организация вычислительного процесса (модели вычислений - МоС).
3. Генерация архитектуры и микроархитектуры.
4. Оценка и выбор архитектурных решений.
5. Верификация архитектурных решений.
6. Выходные спецификации для этапа реализации.
Методики высокоуровневого проектирования ВсС активно развиваются на протяжении последних 15-ти лет. Их основные направления:
• Объектно-ориентированное проектирование (вытекает из ООП).
• Параллельное аппаратно-программное проектирование (Hardware/Software CoDesign):
• Компонентное и платформно-ориентированное проектирование.
• Акторно-ориентированное проектирование.
• Многоязыковое проектирование.
• Аспектное проектирование.
Основным представлением объектов высокоуровневого проектирования ВсС по-прежнему считаются языковые спецификации (текстовые и графические). Аналитические выражения используются ограниченно.
Важнейшее место в высокоуровневом проектировании ВсС занимают инструментальные средства (САПР), включая методики их использования. В работе рассмотрены две категории инструментальных средств:
• Индустриальные продукты (от ведущих производителей САПР системного уровня, покрывают частично средний и нижний уровни проектирования и программирования; используют «промышленные» языки и ограниченное число МоС).
• Академические продукты (Университеты Беркли, Канзас, Гренобль и др.; используют различные МоС, специальные языки).
Показано, что сегодня необходимо активное развитие HLD -инструментов.
Предложено определение встраиваемой вычислительной системы - как специализированной (заказной) микропроцессорной системы, непосредственно взаимодействующей с объектом контроля или управления [и объединенной с ним единой конструкцией]. Это позволяет:
• Объединить большое число категорий вычислительных систем по ключевому общему признаку.
• Устранить проблему- влияния вторичных относительно «вычислительной сути» факторов (размеры, конструкция, топология, конкретное целевое назначение и др.).
• Обеспечить свободный выбор реализации (ранее «выпадали» многие возможные архитектурные решения).
• Унифицировать «нишевые» методики проектирования.
• Развивать новые «активности», в первую очередь, в высокоуровневом проектировании (например, применять платформно-ориептированное проектирование, аспектное проектирование и др.).
Сформулированы перспективные принципы проектирования ВсС, направленные на обеспечение формального расширения поля поиска решения:
• Формирование системы высокоуровневых (архитектурных) абстракций для представления ВсС.
• Выделение функциональных и нефункциональных требований ТЗ в аспекты процесса проектирования.
• Широкое использование принципа платформно-ориентированного проектирования.
• Совместное проектирование инструмент&тьной и целевой компоненты проекта.
• Динамический баланс «альтернатив» проектирования: фаз «проектирование/реализация», фаз «разработка/исполнение» вычислительного процесса, Н\У/8\У - реализации...
На основании представленных принципов сформулирована цель и задачи исследования.
Вторая глава посвящена вопросам архитектурного проектирования ВсС. Предложена система вычислительных архитектурных абстракций для использования в современных методах и технологиях высокоуровневого проектирования ВсС. Анализируются типовые процессы проектирования ВсС и вводятся шаблоны процессов проектирования. Предлагается аспектная модель процесса проектирования ВсС.
В рамках задачи высокоуровневого проектирования ВсС в работе предложены четыре группы архитектурных абстракций:
• Базовые элементы ВС (вычислительный механизм, вычислительная платформа, архитектурный агрегат);
• Абстракции представления ВС на системном уровне (архитектура, архитектурная платформа, архитектурная модель, аспект);
• Абстракции процесса проектирования (проектирование ВсС, инфраструктура проекта, проектное пространство, аспектное пространство);
• Понятия для анализа и оценки существующих архитектурных решений (вычислительный процесс, виртуальная машина, модель вычислений).
Важнейшие абстракции для представления ВсС - вычислительные механизмы и виртуальные машины. Виртуализация рассматривается в качестве базовой абстракции вычислительной техники, которую предложено распространить на процесс высокоуровневого проектирования в целом.
• Виртуализация - абстрактное (модельное) представление вычислительных ресурсов программно-аппаратной платформы.
• Виртуальная машина - вычислитель (computer), полученный в результате виртуализации базовой вычислительной платформы.
• Виртуальная вычислительная машина (ВВМ) - техническое решение, реализующее семантику МоС,
• Вычислительный механизм (ВМх) - техническое решение, реализующее субъект (актор) МоС. Другими словами вычислительный механизм -носитель модели вычислений.
В работе предложено делить вычислительные механизмы по уровню сложности на 4 категории:
• атомарные (стандартные) вычислигельиые функциональные элементы (SN74, операторы языка...);
• составные (композитные вычислительные функциональные элементы);
• подсистемы организации вычислительного процесса (прерывания, кэшпамять, очереди ...);
• комплексный вычислительный процесс - ВВМ (значимая вычислительная функциональность, самодостаточная для решения завершенной вычислительной задачи).
Разделение вычислительной системы на механизмы и вычислительные виртуальные машины — важная и сложная задача, которая плохо поддается формализации. Показано, что такое разделение ВсС возможно относительно выделенных (в качестве самостоятельных) вычислительных процессов. Степень инвариантности к аппаратному/программному способу реализации для абстрактных ВМх и ВВМ определяется в первую очередь сопряженными с ними МоС.
В работе в качестве инструмента представления ВсС предлагается использовать создание иерархии ВВМ. Известно, что использование виртуальных машин позволяет эффективно бороться с семантическим разрывом в вычислительной технике, существующим между средствами формального, абстрактного представления вычислительного процесса и возможностями аппаратных средств. Развитие вычислительной техники убедительно демонстрирует эффективность покрытия «семантического разрыва» посредством организации иерархии виртуальных машин в архитектуре ВС.
Принцип выделения ВВМ - мощный инструмент, позволяющий:
• структурировать вычислительный процесс и саму ВС;
• масштабировать проектные решения;
• обеспечивать программную совместимость и переносимость;
• абстрагироваться от способа реализации вычислителя;
• повышать надежность вычислительного процесса;
• управлять сложностью и другими характеристиками технологии программирования ВС для различных категорий пользователей;
• совмещать («по вертикали») различные МоС, обеспечивать переходы от одной модели вычислений к другой.
В работе показано, что на эффективность пояска архитектурного решения ВсС определяющим образом влияет взгляд на организацию вычислительного процесса в целом.
Процесс проектирования ВсС как объекта, решающего конечную задачу, предлагается рассматривать как организацию вычислительного процесса в пространстве и времени в оговоренных техническим заданием (ТЗ) ограничениях. Такой взгляд позволяет сформулировать принцип актуализации вычислительного процесса как совокупность преобразований исходного представления целевого алгоритма в конечный (по ТЗ) вид. Это, в свою очередь, позволяет дополнить понятие «решение целевой задачи в фазе Run-Time» совокупностью «вычислительных» подготовительных операций этапа «Design-Time». Предлагается искать архитектурное решение в едином пространстве Design-Time и Rim-Time фаз существования ВсС, устраняя априори часто не обоснованно навязанные ключевые для проекта решения.
Данная модель пространства потенциальных решений эффективна для ВсС значительной сложности.
Понятие платформы в вычислительной технике на интуитивном уровне последние 10 лет применяется исключительно широко. В рамках одного из ведущих направлений проектирования ВсС и СнК «Platform-Based Design» (PBD) вычислительная платформа определяется как множество проектов, удовлетворяющее некоторому общему условию (Е. Lee, 2003 г.).
В работе показано, что важнейгиее свойство вычислительной платформы, как зафиксированного для повторного использования набора спецификаций, - возможность предоставлять заданный уровень абстрагирования от конкретики реализации. В системе абстракций вычислительная платформа (ВПл) рассматривается как единство «внешнего» и «внутреннего» представления функционально-завершенного и функционально-значимого объекта в составе ВсС. Платформа в рамках проекта ВсС - техническое решение, фиксируемое в проекте для повторного использования. ВПл выступает основным инструментом повторного использования на архитектурном уровне.
Отмечено, что сегодняшняя практика состоит в проектировании на базе готовых вычислительных платформ (аппаратных, программных, инструментальных, конструктивных ...), которые выбираются, к сожалению, «по вторичным признакам». Предлагаемая методология проектирования позволяет усилить / добавить грамотный выбор или создание совокупности вычислительных платформ проекта.
Предложено строить дерево классификаций ВсС на основе понятия проектной платформы, что позволяет акцентироваться на общих свойствах
системы или ее части во всем пространстве свойств, технологий и реализаций ВсС. Пример классификации fia базе проектной платформы:
• Вычислительные платформы (процессоры, ОС, МоС...):
• Платформы промышленных ПК и ПЛК;
• Полуфабрикаты от мультимедиа-индустрии;
• Микроконтроллеры и DSP;
• ПЛИС, ПСнК;
• ASIC, ASSP, ASIP, SOC, NOC;
• «Свободная» кремниевая компиляция.
• Платформы системного ПО (ОС), сетевые, интерфейсные, конструктивные, инструментальные...
В работе предложено, сформулировано и подробно изложено понятие аспектного подхода к проектированию ВсС (аспектная модель проектирования). В основе этого подхода лежит идея выделения аспекта как сегмента проектного пространства, в рамках которого отражается частная проблема в проекте.
Перечислим основные понятия аспектной модели проектирования.
• Аспект - искусственно выделяемый сегмент проектного пространства, отражающий частную проблему проекта по ходу его выполнения (концептуальный, локальный). Проектировщик сам формирует список аспектов, которым потом пользуется, выделяет концептуальные аспекты, которые существуют по всему ходу проекта, может выделять по необходимости локальные аспекты на отдельных шагах проекта. Примеры аспектов:
• функциональный (если целесообразно, то по подфункциям / подсистемам...);
• надежностный;
• энергетический;
• синхронизации / синхронности / РМВ ;
• информационной безопасности;
• конструкторско-технологический;
■ повторного использования;
• масштабируемости, реконфигурируемости;
• документно-логистический и другие.
• Архитектурный агрегат (А-агрегат, аа) - элемент проекта. Обладает группами свойств в рамках каждого аспекта. Текущая информация о свойствах аа отражается в его спецификации, а связи между аа в пределах аспекта представляются списком ANL (aspect netlist). Совокупность аа на каждом шаге определяет текущее представление целевой системы и текущее состояние проекта.
« Архитектурная модель (А-модель) - модель проекта/целевой системы, включающая перечень аспектов, совокупность аа, аспектные списки связей (ANL) и спецификации для каждого аа.
• Архитектурная платформа - элемент повторного использования концептуальных решений (А-модель, полезная для повторного использования, зафиксированная в качестве самостоятельного продукта):
• перечень аспектов проектирования;
• модель (модели) вычислений;
• внешняя логика взаимовлияния аспектов (критерии проектирования);
• перечень зафиксированных шаблонов повторного использования;
• элементная база.
• Механизм - верифицированный и отложенный для повторного использования аа, снабженный набором метрик (характеристик).
Суть асиектного процесса проектирования состоит в том, что на начальном шаге проект разделяется на аспекты, дальше выполняется параллельное относительно независимое проектирование в рамках аспектов системы и в конечном итоге аспекты собираются воедино з реализацию системы.
С формальных позиций каждый из аспектов проектирования характеризуется:
• средствами описания аспекта (О) - элементами некого множества и логикой их взаимодействия, посредством которых выражается суть рассматриваемой частной проблемы;
• аспектным проектором (р) - некоторой функцией, позволяющей из архитектурного описания выделить частную проблематику;
• характеристическими функциями (^ - позволяющими получать оценки, основываясь на представлении проблемы в терминологии средств описания аспекта.
Математически, аспект процесса проектирования можно определить как упорядоченную тройку элементов
Аз={0,р,П (1)
/ = (2) где / - множество характеристических функций, а Л, N и 2 множества действительных, натуральных и целых чисел соответственно.
В рамках аспектного подхода архитектурный агрегат определяется как базовый элемент процесса проектирования системы, объединяющий в себе различные точки зрения на целевую систему.
Множество, включающее все аспекты проектирования, называется аспектным пространством процесса проектирования и Ля,. Наряду с
аспектным пространством процесса проектирования определяется аспектное
пространство целевой системы ЛГ = [~[о;, где О, является средствами
/»1
выражения одного из аспектов процесса проектирования, операция П -прямое произведение множеств. Очевидно, что все архитектурные агрегаты
являются элементами Л Р. Аспектная полнота конкретного процесса проектирования определяется количеством рассматриваемых аспектов
^ = |ил4(| = сШп(ЛЛ. (3)
Архитектурная модель целевой системы определяется как модель системы, выраженная в архитектурных агрегатах Ат = {аа: аа е АР).
Важной частью определения аспекта проектирования (1) является аспектный проектор р,: АР --> О,. Аспектный проектор предназначен для выделения из архитектурной модели соответствующего аспекта (аспектной модели) д,(Л/я)сО(. Каждый аспектный проектор по определению обладает следующими свойствами:
ЧрУАсАРУВсАР А = В => р(А) = р(В) и р(А 1) В) = р{А) и р(В) (4), (5) Для каждого аспектного проектора определяется обратный проектор рА. Для аспекта 1 и его аспектной модели а, обратный проектор определяется как Л(р/'(а,)) = я, • Для обратных проекторов доказывается важное свойство (6).
\/А с: О, У В с О, верно р?(А) = р'\В) =*А = В (6)
Независимость аспектов проектирования определяется через независимость соответствующих аспектных проекторов. Аспект ¡' является независимым от аспекта если для аспектных проекторов выполнено р,{р,'(",)) = Ортогональными называются взаимно независимые аспекты. Основным преимуществом использования ортогональных аспектов проектирования является независимость соответствующих характеристических функций. Другими словами если аспект /' не зависит от аспекта у, то значения характеристических функций аспекта г не изменяются при изменении у-ого аспекта архитектурной модели. Данное утверждение формально доказывается на основании свойств (4), (5), (6) и определения независимости аспектов.
На основе свойства аспектной полноты А-агрегатов в конкретной А-модели в работе определены абстрактный, виртуальный и реализуемый классы этих объектов.
Предложена и показана эффективность классификации ВсС и процессов их проектирования на основе спектрального состава концептуальных аспектов (рис. 2).
Тезис унификации представления аппаратной и программной компоненты в контексте высокоуровневого проектирования ВсС потребовал в работе разделить и определить следующие важнейшие понятия:
• фиксированная (Н№) и нефиксированная (8\У) составляющие реализации;
• аппаратный и программный принципы реализации.
Аппаратной реализацией предложено считать прямое исполнение алгоритма, когда нет «форматных» управляющих структур - микрокоманд, команд и т.д. Программная реализация - многоуровневая интерпретация на основе «форматных» управляющих структур - примитивов, и их последовательностей - программ. Предложено реконфигурируемость ВПл
определять как способность к изменению «воплощаемой» при реализации МоС.
Принцип актуализации вычислительного процесса позволил выделить перспективный класс платформ ВсС с программируемой архитектурой как прямой результат унификации проектирования по осям «Design/Run Time» и «HW/SW реализация». В работе исследованы свойства таких платформ, основными из которых являются:
• возможности широкого конфигурирования/программирования пользователем для ВсС со специализированными архитектурами;
• САПР-орнентированность (необходимость инструментальной поддержки);
• масштабирование реализаций;
• необходимость использования А-платформ в качестве шаблонов.
Бес
аспекта
Ф И Эп Н РВ Д с Тонн
Категория ВсС-спектральный состав концептуальных аспектов.
Вес
аспекта
Спектральный набор аспектов
:1
Классы Г ВсС
Шаг проекта
Процесс проектир ования - состав и динамика аспектов проектирования.
Рис. 2. Аспектная классификация ВсС (а) и процессов проектирования ВсС (б).
а) 6)
Рис. 3. Шаблоны процессов проектирования ВсС: (а) На основе традиционной для ВС схемы проектирования; (б) На базе аспектной модели и композиции ВПл. (ФТ, НФТ - функциональные/нефункциональные требования; ЯОФ/ТЯОФ - языки описания функциональности/трансляторы ЯОФ; ВПл - вычислительная платформа).
В работе проанализированы типовые сценарии высокоуровневого проектирования ВсС и показана необходимость формирования для них ряда шаблонов процесса проектирования. Шаблоны формируются в терминах разработанной системы абстракций и с учетом аспектной модели проектирования по составному априорному критерию сложности проектирования, учитывающему масштаб (сложность) задачн/ВсС и допустимую «глубину погружения», которая определяет доступные для проектирования уровни иерархии ВсС.
На рис. 3 представлены шаблоны проектирования, в табл. 1 приведена их сравнительная характеристика.
Таблица 1. Характеристики шаблонов проектирования
Шаблон на основе традиционной для ВС схе.мы проектирования Шаблон на базе аспектной модели и композиции ВПл
Достоинства
• Инвариантен к уроьню реализации. ■ Процесс интуитивно понятен сегодняшнему «массовому» разработчику ВсС. • Параллельная сбалансированная работа с ФТ и НФТ. • Генерация архи тектуры с позиций предложенной системы абстракций. • Объединение фаз проектирования и исполнения вычислительного процесса в единое пространство технических решений. • Отложенная фаза аппаратно-программного разделения.
Недостатки
• ТЗ уже подготовлено для реализации ВС, т.е. для проектируемой системы в целом уже решены вопросы выделения функций, «навешиваемых» на ВС. • Процесс отражает в явном виде каноническую архитектуру ВС и приоритеты как между ФТ и НФТ, так и в рамках процесса реализации ФТ. • Т.к. присутствует жесткая привязка ВПл - ЯОФ, уровень ВПл будет стремиться вверх, минимизируя свободу выбора для архитектуры целевой ВсС в целом. • Много задач, которые при такой гранулярности ВПл окажутся практически не поддержанными в плаке методики прое»сшроеания (сложно выполнить адекватный выбор исходной архитектуры, которая должна быть многоуровневой и гетерогенной). • Доминирующая функциональность (ФТ) ведет к обнаружению проблем на поздних этапах проекта. • Процесс не знаком большинству разработчиков • Процесс предполагает наличие компетенций в области вычислительных абстракций.
Рекомендации по использованию
• Создание простых ВсС с низкой потенциальной вариативностью архитектуры. • Создание сложных ВсС с высокой потенциальной вариативностью архитектуры.
Третья глава посвящена моделям вычислений (МоС). Приводится обзор и анализ основных МоС, используемых в ВсС. Предлагаются новые МоС, методы их расчета и реализации.
Важнейшим понятием системы абстракции является модель вычислений или вычислительная модель Model of Computation, которая по-разному определяется специалистами:
• Недвусмысленный формализм для представления спецификаций проекта и проектных решений (S.-Vincentelli, 1998);
• Правила взаимодействия компонентов вычислительного процесса (Е. Lee, 2003).
Анализ показал, что понятие МоС целесообразно рассматривать в контексте автоматизации проектирования ВсС в двух направлениях:
1. Направление простых (по «принципу действия») моделей высокого уровня абстракции (процессы Хоара; сети процессов Кана (потоковые модели); модель с непрерывным временем (НВ); дискретно-событийная (ДС) модель; синхронно-реактивная (CP) модель; конечные автоматы; другие).
2. Направление формализованного представления вычислителей как виртуальных машин независимо от их сложности и принадлежности к уровню вычислительной иерархии (х86; MCS-51; ARM7...; Java - машина; С - машина; другие).
В рамках системы вычислительных абстракций предложено определять модель вычислений как математическую модель, демонстрирующую вычислительные возможности и правила использования субъекта вычислений (актора) и рассматривать в качестве поведенческого аспекта в аспектной модели проектирования ВсС.
На основе анализа особенностей сложных распределенных ВсС показана необходимость учета следующих их свойств в выбираемой композиции МоС:
• заранее четко определенная функциональность;
• распределенность вычислительного процесса;
• функционирование различных частей системы в собственных, значительно различающихся масштабах времени;
• наличие слабо связанных вычислительных доменов, сложная топология;
• частое пребывание узлов системы в ожидании событий;
• разнородность элементной базы.
Для таких ВсС разработан класс объектно-событийных моделей вычислений (ОСМВ), адекватно учитывающих информационную и управляющую природу ВсС и ориентированных на представление и расчет вычислительных процессов и архитектур с различными последующими реализациями по шкале «аппаратура - программа».
Модель позволяет выполнять статический (то есть, без проведения имитационного моделирования) расчет временных характеристик системы, учитывает выбор вычислительной платформы и предоставляет средства для проверки выполнения требований к ее временным характеристикам. Тем не менее, модель является поведенческой, то есть предполагает имитационное моделирование поведения проектируемой системы.
ОСМВ предоставляет следующие элементы моделирования:
• Объект, функциональный блок (ФБ). Структурный элемент, выражающий целевую функциональность. Позволяет реализовать иерархию моделей, являясь композицией более мелких ФБ. Обладает свойствами полиморфизма и инкапсуляции.
• Событие. ФБ модели связаны сигналами. Событие в ОСМВ - изменение сигнала (время + состояние). Событие переносит данные между ФБ и активизирует последние для выполнения определенных действий.
• Порт. Механизм передачи событий между ФБ. ФБ воспринимает события по входным портам и генерирует события по выходным портам.
• Узгл. (Целевой). Физический носитель вычислительных ресурсов целевой системы, реализующий "отображенные" на него ФБ и порты.
Поясним более подробно использование ОСМВ. Вычислительный процесс в системе описывается с помощью ФБ, взаимодействующих посредством синхронных и асинхронных портов. События (изменения состояния сигнала) на синхронном входе активизируют ФБ, запуская или продолжая некий алгоритм, завершающийся генерацией события на выходе. ФБ анализирует состояние асинхронного входа (входа данных) только при возникновении события на одном из синхронных входов (входов управления).
Функциональный блок представляет собой, таким образом, абстрактный вычислитель, выполняющий инструкции различного типа (события на синхронных входах), и обрабатывающий данные этих инструкций (состояние асинхронных входов). Конкретными примерами такого вычислителя могут быть: объект ООП, аппаратный вычислитель (микропроцессор), задача ОСРВ, драйвер устройства.
Если рассматривать событие как точку пространства [время]Х[состояние] eescTxV, то действия ФБ представляются как f{TxV) = f,{T)-xfv(V). При этом для моделирования основную роль играет функция /,: Г —> Г. Для расчета характеристик ОСМВ ВсС используются параметры ФБ: сложность генерации выходного события г, минимальный интервал следования входных событий у, минимальный интервал генерации выходных событий т. Легко показать, что эти три параметра ФБ связаны выражением
со = т»г, (7)
где символ "•" — функционал, обозначающий "операцию интерпретации" и зависящий от реализации ФБ. В работе определяется конкретный вид функционала для "операции последовательной интерпретации" (8) и "операции параллельной интерпретации" (9).
®/=1]г/Л> = (8)
со, = max(r. ,у.), со = г ® у (9)
j-\..ji 1
Описанные операции характерны для программной и аппаратной реализации ФБ, соответственно. При смешанных реализациях ФБ функционал "•" имеет более сложный вид. Временной масштаб ФБ определяется его входными и выходными событиями и равен
М ~ min(mm(m.),rnin(r,)) = min(/,) (10)
Расчет реактивных свойств ФБ производится согласно (11)
Д = шах(й), /0 • (г ® к)) = шэх(г « у, /„ ■ (г ® к)), (11)
где Д - время формирования выходных событий, к - количество входных событий за временной интервал /а.
7 ы
А с С В
Рис. 4. Композиция ФБ.
Важным свойством параметров ФБ является возможность аналитического получения параметров ФБ по известным параметрам составляющих его ФБ.
На рис. 4 представлен ФБ С, состоящий из ФБ А и В. Согласно (7) можно записать
ш = тв»е = т"'(ул *у) или й)=тс*у (12), (13)
Для разных значений функционалов "•" в выражении (12) можно
получить аналитический вид матрицы хс выражения (13). Для программной
реализации ФБ Л и В, верно тс = твхт*, ^ = и о) = тску. Для
к
аппаратной реализации ФБ А и В, верно гс = гп 0 г", г,Г, = тах(гДг4'|;) и
ш = тс ®у. Для смешанных реализаций верны следующие верхние и нижние оценки:
для V/ И тс=(тл®тв) тсху>тл®(твху)^тс®у (14)
для V/ и тс - (тА хтв) тсху£тлх(тв®у)>тс®у (15)
Аналогичные выражения можно получить и для других вариантов композиции ФБ.
В работе предлагаются некоторые частные критерии оценки модели целевой системы, такие как критерий выбора управляющих входов (16), критерий выделения временного домена (17) и критерий сильной/слабой связи (18).
Уге^сГхК ||е-/(е)||т=сош1 (16)
Х(М(/.)-Мф))2 (17)
ММ<к (18)
Мф,)
В выражениях (16), (17) и (18)/- поведение ФБ, О - домен ФБ, М(£>) -временной масштаб домена, к - показатель согласованности доменов (в реальных условиях ¿>10).
Помимо функциональных свойств (алгоритмов преобразования сигналов), ФБ отражает временные свойства представляемой им подсистемы. Временные свойства задаются следующими атрибутами: • минимальное время обработки событий по синхронным входам. Вектор
Г_М) где г> есть параметр входа с номером], задает эти величины для всех входов ФБ;
• сложность генерации выходного события. Матрица 1 ~!г»1, задающая количество инструкций по входу j, необходимое для генерации одного события на выходе i;
• минимальный интервал генерации выходных событий. Вектор ^""1®'!, задающий либо характеризующий данную величину по всем выходам ФБ.
При проектировании сверху вниз в процессе декомпозиции крупного ФБ в конечном итоге получается набор атомарных ФБ (АФБ), выражающихся средствами выбранной ВПл. Временные атрибуты Г и П для АФБ задаются характеристиками платформы, в рамках которой они реализованы.
Другим элементом ОСМВ является целевой узел (ЦУ), представляющий собой элемент ВПл, на которой реализована вся или часть системы. Примерами ЦУ могут служить микропроцессор конкретного семейства, ПЛИС, набор микросхем жесткой логики, канал передачи данных на базе конкретного интерфейса, ОСРВ, виртуальная машина, набор программных библиотек. В процессе отображения ФБ на ЦУ его атрибуты Г и й фиксируются, отражая производительность выбранной ВПл.
Операционная семантика ОСМВ обладает очевидными достоинствами, однако она затрудняет сравнение этой модели с другими МоС и применение ее при создании гетерогенных моделей. Для применения ОСМВ в комплексном моделировании разработано ее расширение на основе денотативного описания, которое использует метамодель «Модель сигналов с тэгами» (Е.Ли, Tagged Signal Model, TSM). Термин «денотативная» означает, что модель формулирует вычисления в стиле теории доменов Скотта, описывавшей вычисления в терминах свойств функциональных преобразований сигналов (таким образом, обозначавшей эти свойства), в отличие от операционного подхода (Тьюринг, Марков, Чёрч).
Модель TSM основана на представлении вычислительной системы как совокупности сигналов. Сигнал, в свою очередь, является множеством событий вида e-{t,\), где v есть некоторое значение, элемент данных, a t есть ассоциированная с ним некоторая метка {тэг). Событие e = {t,e} называется «пустым». В зависимости от свойств множества меток Г, понятие сигнала может иметь различный смысл. Компонент вычислительного процесса (актор) представляет собой множество его поведений. На основе теоретико-множественного подхода строится математическое описание соединений между акторами, входных и выходных сигналов, композиций акторов произвольной топологии, включая обратную связь. Модель описывает также процедуру абстракции системы процессов в один процесс, и затрагивает вопросы эквивалентных структурных преобразований системы акторов. TSM формально задает понятия времени, его метрик, детерминизма, каузальности, монотонности и непрерывности акторов, другие понятия, используемые при анализе ВсС.
В рамках денотативного описания ОСМВ (ДОМВ) в качестве модели времени выбрано множество неотрицательных действительных чисел Rt, то
есть, для ОСМВ множество тэгов Т = . Из приведенного выше определения сигнала следует, что функциональный сигнал есть функция ¡:Т~>У, приписывающая каждой метке некоторое значение. Область определения этой функции ёот(^) есть начальный сегмент Т (сигнал может быть известен лишь до некоторого момента). Если <Ьт($) = Т, то сигнал называется целым (он до конца известен).
Между сигналами можно задать отношение префикса, являющееся обобщением префиксов строк и последовательностей. Для любых двух сигналов ^ и ¿'л , .г, есть префикс ^ (обозначается я, Ея2), если Допф,) с: с1от(.т:) и для всех / е ёот( ): у|(г) = ^2(0- Иными словами, выражение Е означает, что график функции ^ является частью графика 52 до некоторого г.
Для описания сигналов в объектно-событийных системах была задана функция характеризующая минимальную разность между метками
непустых событий в сигнале. Обозначим
А = {|/~Л:М'е<1от(5),,г(/)^ множество всех интервалов времени
между непустыми событиями в сигнале Тогда
где inf(£>,) есть точная нижняя грань множества £>,. Для сигналов, содержащих меньше двух непустых событий значение функции равно бесконечности. Если сигнал содержит больше одного непустого события, то à'(s) дает минимальный интервал между ними.
Функция S(s) позволяет задать отличительную характеристику сигналов на синхронных входах и выходах ФБ. Для таких сигналов
где т, есть атрибут порта (у1 для синхронного входа, для выхода). Этот атрибут характеризует проектное ограничение на минимальный интервал времени между интерпретируемыми на входе или генерируемыми на выходе ФБ инструкциями (возможности платформы, требования ТЗ) и является характеристикой ФБ.
В соответствии с вышесказанным, сигналы в объектно-событийной системе, за исключением подаваемых на ее внешние асинхронные входы, обладают свойством (20) и являются дискретно-событийными (ДС). Стоит отметить, что (20) является более строгим, чем определение ДС сигнала, и не все ДС сигналы обладают этим свойством.
Асинхронный вход ФБ преобразует подаваемый на него сигнал таким образом, что ФБ в каждый момент времени может прочитать значение последнего непустого события в поданном сигнале. Множество непустых событий на асинхронном входе будет £ = {(»,л(г'))}, где //е с1от(.0, (</' и не существует Ге с!от(5) такого, что ('</"<( и Очевидно, множество Е
(19)
0<Г, <¿(.0,
(20)
непрерывно и минимальный интервал между событиями на асинхронном входе равен 0.
Поведение ФБ есть функция a:P->S, приписывающая каждому порту (входу или выходу) ФБ наблюдаемый на нем сигнал (Р есть множество портов ФБ, S множество сигналов в системе). Сам функциональный блок есть множество поведений.
Для любого поведения ФБ а минимальный интервал между событиями на синхронном входе p¡ будет равен, с учетом (20), У. - 5(о(р/)). Минимальный интервал между генерируемыми на выходе р, событиями будет щ =ñ(aip,)). Эти значения, в отличие от у¡ и со,, являются характеристиками сигналов, а не самого ФБ. Векторы Г = |р)|| и Q = ¡j¿)] характеризуют совокупность сигналов, связанных с ФБ в конкретной системе, в отличие от векторов Г=|/у.| и П=|К1> представляющих собой проектные ограничения временных характеристик ФБ. Математический аппарат ОСМВ позволяет вычислить вектор П по заданному вектору Г.
Обозначим /ÍZ? сужение области определения функции / до ее подмножества D с dom(s). Тогда для ФБ с множеством входных портов Ры и выходных Р0 можно задать функцию
Fy.frtPJMvlP.) (21)
такую, что для любых двух поведений ФБ <т,,сг2: если сг, Т/>„ = <тг \ Р,„, то сг, Т Рс = o-j t Р0. То есть, если поведения на входе ФБ совпадают, то они должны совпадать и на выходе.
Отношение префикса Е можно задать и для поведений. Поведения ФБ о-, и сг, связаны этим отношением, то есть <т, Е ст2, если для всех портов ФБ р g Р: сr,(p) Е сг2(р). Отношение Е делает множество поведений ФБ частично упорядоченным. С учетом наименьшего элемента aL (такого, что для любого реР: аЛр) есть «пустой» сигнал не содержащий событий), это
множество становится полурешеткой, что позволяет применить к нему результаты теории решеток и, в частности, топологии Скотта. Этот подход используется в модели сигналов с тэгами для формального исследования свойств различных моделей вычислений.
С точки зрения этого подхода, ФБ обладают следующими свойствами: детерминизм (функциональность, (21)), монотонность (префикс сигналов на входе дает префикс на выходе), непрерывность (монотонность при целых сигналах), рецептивность (ФБ интерпретирует любой набор сигналов, не нарушающий условие (20)) и строгая каузальность (событие на выходе может быть сгенерировано строго после события на синхронном входе).
В работе предложен способ вычисления временных характеристик ОСМВ ВсС в рамках денотативного описания на основе свойств полного частично-упорядоченного множества атрибутов компонент модели и теоремы Кнастера-Тарского о неподвижной точке. Предложенный способ
учитывает иерархичность моделей, допускает произвольные функции вычисления атрибутов отдельных компонент и использование обратной связи в модели.
На рисунках представлены основные элементы ОСМВ (рис. 5) и пример сети ФБ (рис. 6).
Четвертая глава посвящена вопросам использования разработанных методов и средств проектирования ВсС. Материал главы полностью построен на проектах ВсС и инструментальных средств, выполненных под руководством и при личном участии автора.
На примерах поясняется техника анализа технических решений в проектах ВсС на основе разработанной методологии. Использованы задачи проектирования подсистемы визуализации аналитического прибора и проектирования драйвера периферийного интерфейса. Показано получение архитектурных абстрактных моделей и их реализаций с различной функциональной декомпозицией по шкале Н\У/8\*/. Представлен анализ проекта специализированных гетерогенных вычислителей МЗМ системы железнодорожной автоматики управления движением «Тракт».
ФБ - функциональный блок АФБ - атомарный ФБ ЦУ- целевой узел
Рис. 5. Элементы ОСМВ.
Температура
ФБ1
Сообщение ФБ2
Clk
Локальный узел
щ 7г Канал
связи
Callback iа,
ФБЗ
Запрос
Отображение со.
Центральный вычислитель
Проверить данные
Рис. 6. Сеть ФБ ДОМВ.
На примере многоуровневой организации вычислительного процесса в ВсС зондового сканирующего микроскопа МшЬаЬ демонстрируется применение системы архитектурных абстракций и принципа актуализации
вычислительного процесса. На рис. 7 показаны доступные через средства прикладного пользовательского программирования (СППП) уровни, которые охватывают всю иерархию распределенной гетерогенной ВсС прибора и позволяют гибко балансировать параметры целевого физического эксперимента посредством шкалы «Design/Run-Time».
Рассматривается организация и использование прототипа САПР на базе разработанных объектно-событийных МоС в задаче создания СППП для семейства сложных аналитических приборов с использованием оригинальной архитектуры NL3 и для ВсС с ограниченными ресурсами на платформах NL1.NL2.
Процессор NL3 сочетает в себе элементы суперскалярной и VLIW архитектуры, основной обрабатывающей единицей выступает DPU (Data Processing Unit) - реализация функционального блока ОСМВ. Типовой состав DPU аналитического прибора (открытый список) включает:
r с Прикладные Библиотеки ' ________программы
Щ О
Application Level
5
Java-классы □
fe HQ
Прикладные Java-ачгоритмы
О
User Level
Native Java-функции
О
Драйвера
Операционная среда
Таймеры
Рой
DMA, sdram
Топология
D а
System Level
Hardware Level
<э
Рис. 7. Распределение функций в СППП МшЬаЬ.
• блоки цифровой обработки (вычислитель поворота координат; коррелятор; КИХ/БИХ-фильтр);
• блоки общего назначения (сумматор; табличная выборка; умножитель; память; мультиплексор);
• специализированные блоки (приемопередатчики внешних устройств; осциллограф; отладчик).
Организация вычислений производится посредством статического и динамического конфигурирования композиции ОРУ, для чего разработан
прототип САПР, включающий графическую систему подготовки net-листов, компилятор на основе системы неравенств, библиотеки логических ФБ, Design-Time и Run-Time библиотеки драйверов DPU.
Модель bPU позволяет получить метрики функциональных блокоБ DPU («паспорт», табл. 2), по которым компилятор составляет систему неравенств. Система неравенств строится в несколько этапов, начиная с «общих», присущих всем DPU. Выделяются DPU с активацией по загрузке входных портов и по началу цикла, что отражается в системе неравенств.
Таблица 2. Основные метрики паспорта DPU.
Параметр Краткое описание
T.TT-wj- Интервал использования входного порта в процессе вычислений.
TOLD Интервал сохранения старого значения в выходном порте после начала вычислений.
ТЕ\ТС. Время вычисления выходного порта.
Время упреждения команды загрузкн/вы грузки порта.
¿хаю Время работы терминала.
¿EXEC Задержка начала вычислений.
Параметр Травле определенного входного порта может быть разным для разных выходных портов и должен представлять собой таблицу размером Л;м><А'оит, однако модель использует самое большое значение из этой таблицы. Интервал Тою может начинаться в момент начала вычислений или после загрузки определенного входного порта. Полное количество параметров Тою представляет собой таблицу (1+А^хИоит-
В табл. 3 приведен пример системы неравенств, описывающих топологию композиции ОРи процессора]\1ЬЗ.
Таблица 3. Математическая модель вычислительного процесса NL3
Обшие неравенства
Ограничение для входных цепей "„,['] ^ CYCLE-¿¿xciig~NI„ +'
Определение порядка загрузки входных испей "Ji+Il^nJ'1+1
Ограничение для входных цепей nJA^^cim к„„,М< CYCLE -1
Неравенства по тину активации
Активация по загрузке входных портов (работа в цикле) ПШ ['] - n,r. [N* - Ч + <Wc + W f'"] + Л'лтас + tf^a
Активация по загрузке входных портов (работа между циклами) «„.„И5 ЛNin -1] + Д£гаг +T0L0[i] + Щ"хсиа + -1
Активация по началу цикла "M^^ABLM + ^EXEC »«[^V+WW
Парные неравенства
Следование входных цепей »¿"И г «,Г [NC -1]+<w+Ud+1
Следование выходных цепей ['] S «¡Г [Л'Г -1] + V + AW + Ьшю + Tow ['■]-!
Исследуется инструментальный аспект проектирования ВсС, в рамках которого инструментальная модель системы определяется как перечень инструментальных задач и способ их взаимодействия при обработке потоков инструментальных данных (инструментальных объектов). Сформулированы принципы:
• сопряженного проектирования инструментальной и целевой компоненты ВсС;
• вложенной отладки распределенных ВсС;
• взаимной инкапсуляции инструментальной и целевой коммуникационных систем,
которые положены в основу базового метода организации инструментальных комплексов ВсС. Изложена технология динамических инструментальных компонент, приведены примеры реализации двух комплексов вложенной отладки распределенных ВсС.
Эффективность предложенных методик и подходов в проектировании ВсС дополнительно подтверждают результаты деятельности научно-производственного коллектива, которым на протяжении 15 лет руководит азтор (табл. 4).
Таблица 4. Результативность проектирования
Характеристика коллектива разработчиков
■ 15...25 сотрудников, разработка и тиражирование, период работы - 10 лег
Контроллерные платформы, комплексы технических средств (КТС)
Области применения Линейки продукции
• Судовая, железнодорожная автоматика • Энергетика, ЖКХ, дорожная инфраструктура, интеллектуальное здание • Приборные комплексы • Робототехника • Микроконтроллерные учебные стенды TTF, МЗМКТС «Тракт», CSPMLIC5091, АР3000, CSC, KTG, SPC, SDK, SCG (десятки проектов, тысячи экземпляров сложных систем автоматики)
Элементная база и технические решения
Категория Наименование
• Используемые микропроцессорные ядра и ПЛИС - х86, MCS51, С16х, PIC 16/18, Fujitsu, MSP430, HCOS, Coldfire V2/V3, ATMega, ARM7, ARM9 и другие - ПЛИС Altera, Xilinx
• Реализованные виртуальные машины и ОС - Java, Forth, IEC-61131-3, NL, SVM, keX
• Поддерживаемые протоколы и интерфейсы - Modbus, CAh'pro, TCP/IP, PM3P, 1-Wire®, I2C, SPI - CAN 2. OB, USB, IEEE 802 и другие
• Разработанные САПР и инструментальные комплексы - СППП MiniLab, СППП CSPM LIC5091, GM3P, V3, SSI и другие
Элементы и прототипы САПР, экспериментальные САПР ВсС
• Системы для анализа и верификации МоС ОСМВ и ДОМВ • Система верификации ПО РМВ ВсС • Система поиска, сравнения и упорядочивания компонентов повторного использования
ПО ВсС
• Прототипы САПР МКРС и анализа реконфигурируемых струкгур ВсС
• САПРы СППП для КТС NL, LIC, МЗМ «Тракт», KTG, Луч-3, Луч-ЗМ_
Пятая глава посвящена вопросам внедрения разработанных подходов к проектированию ВсС в практическую деятельность научно-производственных коллективов и в учебный процесс. Демонстрируется опыт организации магистерской подготовки по направлениям проектирования ВсС и СнК. Анализируется состояние дел в области учебно-инструментального стендового оборудования ВсС, описывается учебно-лабораторная платформа SDK, ориентированная на подготовку специалистов-разработчиков ВсС.
В работе представлена модель знаний в области вычислительной техники выпускника отечественного вуза. В ее основе лежит каноническая модель организации ВС с центральным программируемым процессором интерпретирующего типа. Прикладной вычислительный процесс организуется в рамках ОС (комплекс системных программ) посредством создания программы на ЯВУ с последующей трансляцией в команды аппаратного процессора и вызовы функций операционной системы.
Показано, что данная модель профессиональных знаний пригодна в секторе прикладного программирования на стандартных аппаратно-программных платформах и не эффективна в области ВсС:
• отсутствует цельный взгляд на ВС как на аппаратно-программный комплекс, в котором способ реализации функций всех уровней может на практике варьироваться в очень широких пределах;
• не только присутствует, но и продолжает культивироваться взгляд на области создания аппаратного и программного продукта как принципиально различные группы технологий (различные области деятельности разработчика), причем создание программного продукта обычно трактуется как вторичный процесс по отношению к созданию аппаратуры;
• в значительной мере искусственно ограничивается круг демонстрируемых вычислительных архитектур, примеров их аппаратной и программной реализации;
• в учебных программах недостаточно представлены разделы, посвященные вопросам системного проектирования, моделирования архитектуры и микроархитектуры, формальной верификации;
• слабо затрагиваются вопросы создания инструментария всех уровней и этапов проектирования, у студентов нет цельного взгляда на САПР различного назначения в общем цикле проектирования ВС;
• недостаточно глубоко представлены многие частные, но чрезвычайно важные сегодня вопросы проектирования ВсС (например, надежность ВС и процессов их проектирования, учет ограничений реального времени, проектирование систем с микроэнергопотреблением), которые необходимо решать, начиная уже с системного уровня проектирования.
Проанализирован зарубежный опыт, в рамках которого научным сообществом формируются и обсуждаются различные модели подготовки специалиста по информатике и вычислительной технике (рекомендации АСМ и IEEE, документы CS2001, CS2008, СЕ2004 др.). Важнейшее значение имеет опыт целевой подготовки специалистов - разработчиков ВсС и СиК в ведущих университетах США и Европы. В Калифорнийском университете (Беркли) программа подготовки по ВсС основывается на методологии PBD и включает следующие разделы: методология PBD, модели вычислений, проектирование архитектуры и встроенное IIO.
Предложено в области подготовка проектировщиков ВсС на передний план вынести изучение следующих вопросов:
• Различные модели процесса проектирования ВсС. Взгляд на проектирование ВС как на организацию вычислительного процесса. Единая инфраструктура проекта, вычислительные и невычислительные аспекты процесса проектирования и целевой системы.
• Широкое применение принципа сопряженного проектирования ВсС, включая HW/SW реализацию, интеграцию инструментального обеспечения, выстраивание и развитие инфраструктуры проекта.
• Базовые вычислительные абстракции и связанные с ними методы проектирования архитектуры ВС. Архитектура ВС как иерархия виртуальных машин.
• Вычислительные механизмы как технические решения определенной функциональности с различными вариантами реализации. Демонстрация аналогий в различных частях и на разных уровнях представления ВС. Классификация и обзор базовых вычислительных механизмов. Демонстрация диапазона реализаций вычислительных механизмов и архитектур ВсС.
• Масштабируемость и реконфигурируемость в архитектурах ВсС как средство унификации проектных решений, механизм повторного использования, управление основными характеристиками целевого продукта. Широкое применение понятия платформы как фиксированного решения с определенной функциональностью.
• Языковой принцип проектирования ВС на всех уровнях, в первую очередь, в архитектуре, аппаратном и программном обеспечении.
• Различные направления в программировании со специфическими парадигмами, технологиями, инструментарием. Последовательное и параллельное программирование. Встроенное программирование.
• Модели надежности ВС, потенциальные источники ненадежности на всех этапах жизненного цикла системы, избыточность.
• Профиль деятельности и сфера ответственности системного специалиста и прикладных специалистов «от вычислительной техники» в области ВсС.
Исследованы вопросы организации проектной команды ВсС, показано, что канонический состав команды относительно хорошо работает в рамках первого шаблона процесса проектирования (рис. За), и не эффективен в
рамках второго, аспектного шаблона проектирования (рис. 36). Это определяется, прежде всего, наличием семантического разрыва в спецификациях маршрута проектирования ВсС в области НЫЭ. Разрыв объясняется различием в исходных взглядах на ВС создателя спецификации (системотехника) и специалиста, реализующего спецификацию (схемотехника, программиста), а также в отсутствии у последних должного понимания и навыков использования языков системотехнического уровня. Показано влияние базовых компетенций архитектора-руководителя в команде проектировщиков на развитие процессов проектирования ВсС. Предложен новый состав команды, отличительные особенности которого представлены в табл. 5.
Таблица 5. Варианты составов рабочих коллективов
Канонический состав команды «Компетентный» состав команды
Аппаратчик-электронщик по цифровой и цифро-аналоговой технике + проектировщик конфигураций ПЛИС + embedded - программист микроконтроллеров (в т.ч. под RTOS и ГШК) + системный программист на ПК + прикладной программист на ПК + специалист по сетям (контроллерным и общего назначения). Появление/усиление значимости специалиста по языковому многоуровневому проектированию, моделированию, верификации спецвычислителей различных уровней иерархии (СнК, микроконтроллеры + функциональные расширители + ЯТОв + сети + ПЛК-технологии) с его (специалиста) локализацией «по месту».
Особенности
Предметные знания + общая методология (обеспечивает взаимопонимание, интерфейсы в команде/проекте, стиль и технологии инструментария).
Рис. 8. Учебное направление «Встроенные вычислительные системы» на кафедре ВТ СПбГУ ИТМО.
Практическим внедрением в учебный процесс изложенных в работе принципов, абстракций, методик и подходов в проектирование ВсС является созданное под руководством автора в СПбГУ ИТМО на кафедре
вычислительной техники и 4-й год действующее направление «Встроенные вычислительные системы». На рис. 8 представлены состав и основные особенности магистерских специализаций направления.
Учебное направление поддержано учебно-инструментальной платформой ВсС, которая разработана автором на основе большого личного практического опыта разработки и преподавания в области ВС и в соответствии с предложенными в работе решениями. Созданное на ее основе семейство микропроцессорных стендов инструментального и учебного назначения SDK серийно производится и используется более чем в 45 университетах и во многих организациях в обучении и проектировании. Семейство постоянно расширяется как по составу, так и в части методического обеспечения. Особенностью платформы SDK является тщательный подбор технических решений, позволяющий демонстрировать и осваивать широкий спектр вычислительных механизмов и их реализаций, подкрепляя на практике многие положения представленного в работе подхода. Информация по составу, характеристикам и использованию стендов представлена в работе.
Основные результаты работы
В работе представлена методологическая и теоретическая база высокоуровневого автоматизированного проектирования встраиваемых вычислительных систем, основывающаяся на системе вычислительных архитектурных абстракций. Это обеспечивает развитие методов и средств архитектурно - структурного проектирования в комплексе с формированием сценариев и инфраструктуры процесса проектирования встраиваемых вычислительных систем. Предложены теоретические основы построения САПР системною уровня, созданы модели, алгоритмы и методы для синтеза и анализа архитектурных решений в области проектирования встраиваемых вычислительных систем.
В работе получены следующие основные результаты:
1. Предложено определение ВсС, основанное на характере взаимодействия ВС и контролируемого и/или управляемого объекта физического мира, не ограничивающее сложность, топологию и принципы организации системы.
2. Предложена система архитектурных абстракций ВсС и шаблоны процессов архитектурного проектирования ВсС для случаев общего и частных технических заданий.
3. Предложена обобщающая аспектная модель процесса проектирования ВсС. Конкретизированы и формализованы основные положения аспектной модели проектирования и базовые элементы моделирования: А-модель, состоящая из А-агрегатов, аспектное пространство процесса проектирования, аспектные проекторы, аспектные модели, характеристические функции.
4. Даны классификации А-агрегатов и А-моделей. Предложена аспектная классификация как самих ВсС, так и процессов их проектирования, позволяющая наглядно представлять свойства систем и критерии их создания, контролировать процесс проектирования, сравнивать проектные платформы, анализировать выполненные проекты ВсС.
5. Определено понятие «архитектурная платформа», выступающее в качестве инструмента повторного использования концептуальных решений в процессе проектирования ВсС. Предложена классификация ВсС на основе понятия «проектная вычислительная платформа», которая позволяет систематизировать базовые вычислительные архитектуры и связанные с ними технологии проектирования ВсС.
6. В работе в качестве поведенческого аспекта архитектурного проектирования подробно рассматривается ключевая абстракция «модель вычислений» ВсС. Предложен класс объектно-событийных моделей вычислений (ОСМВ), который полно учитывает особенности распределенных ВсС. Разработан математический аппарат расчета характеристик ОСМВ и созданы методы синтеза и анализа поведенческих моделей ВсС, которые являются основой оригинальных САПР и средств моделирования распределенных ВсС.
7. Унифицировано представление «Design-Time» - «Run-Time» фаз вычислительного процесса, что позволяет использовать проектную ось «Design/Run-Time» для поиска более эффективной функциональной декомпозиции целевой ВсС. Формально процесс поиска обеспечиваегся разработанной моделью актуализации вычислительного процесса,
8. Предложен набор компетенций команды проектировщиков ВсС, основанный на рассматриваемой в работе системе архитектурных абстракций, который позволяет сократить семантический разрыв в спецификациях маршрута высокоуровневого проектирования.
9. Создано и внедрено в учебным процесс магистерское направление «Встроенные вычислительные системы» в составе программ «Проектирование встроенных вычислительных систем», «Системотехника интегральных вычислителей. Системы на кристалле», «Сетевые встраиваемые системы». Разработанные учебные методические материалы и стендовое оборудование позволяют эффективно внедрять методологию высокоуровневого архитектурного проектирования, включая подходы, предложенные автором, в практическую деятельность профильных научно-производственных предприятий и коллективов.
Основные результаты диссертации опубликованы в следующих работах:
Статьи в изданиях, рекомендованных ВАК для публикации результатов докторских диссертаций:
1. Платунов А.Е., Скорубский В.И., Третьяк Л.Н., Экало Ю.В. МикроЭВМ для автоматизации высокоточных теплофизических измерений // Известия вузов. Приборостроение. - 1982. -T.25, № 11. - С. 87-90.
2. Грушвицкий Р.И., Гагарин Ю.И., Платунов А.Е., Подклетнов Г.С., Подгурский Ю.А., Скорубский В.И. Стендовое оборудование для изучения и применения микропроцессоров и микропроцессорных наборов // Приборы и системы управления. - 1983. - № 3. - С. 8-10.
3. Платунов А.Е., Поротов В.Н., Порошин А.Н., Скорубский
B.И. Применение микропроцессорного управления в измерительном комплексе // Известия вузов. Приборостроение. - 1984. - Т.27, № 4. -
C.18-21.
4. Платунов А.Е., Свинолобов В.Г., Скорубский В.И. Структура и программное обеспечение проблемно-ориентированных мультимикропроцессорных систем // Известия вузов. Приборостроение. -1987. - Т.ЗО, № 9. - С. 39-44.
5. Ключев А.О., Коровьякова Т.А., Платунов А.Е. Использование интерфейса JTAG для отладки встраиваемых систем // Известия вузов. Приборостроение. - 1998. - Т.41, № 5. - С. 45-50.
6. Платунов А.Е. Проектирование контроллеров с изменяемой архитектурой // Вестник ТГТУ. - 1998. - Т.4 - С. 338-343.
7. Новиков Г.И., Платунов А.Е. Сквозное автоматизированное проектирование микропроцессорных систем // Известия вузов. Приборостроение. - 2000. - Т.43, № 1-2. - С. 35-39.
8. Платунов А.Е. Архитектурная модель цифровых вычислительных систем для встроенных применений // Известия вузов. Приборостроение. - 2001. - Т.44, № 3. - С. 8-15.
9. Платунов А.Е. Архитектурные абстракции в технологии сквозного проектирования встроенных вычислительных систем // Научно-технический вестник СПб ГИТМО (ТУ). Выпуск 6. Информационные, вычислительные и управляющие системы. - СПб.: СПб ГИТМО (ТУ),
2002, —С. 76-83.
10.Платунов А.Е., Постников Н.П. Единое проектное пространство плюс аспектная технология - перспективная парадигма проектирования встраиваемых систем // Научно-технический вестник СПбГУ ИТМО. Выпуск И. Актуальные проблемы анализа и синтеза сложных технических систем. - СПб.: СПбГУ ИТМО, 2003. — С. 121-128.
П.Баранов И.В., Платунов А.Е., Платунов Е.С. Комплекс автоматизированных приборов для измерения тепловых свойств // Научное приборостроение. - 2003. - Т.13, № 3. - С. 19-24.
12. Платунов А.Е. Проектирование встроенных вычислительных систем // Известия вузов. Приборостроение. -2003. - Т.46, № 2. - С. 5-13.
13. Голубок А.О., Платунов А.Е., Сапожников И.Д. Система управления сканирующим зондовым микроскопом // Научное приборостроение. -
2003. - Т.13, №3.-С. 25-31.
14. Платунов А.Е. Роль вычислительных моделей и механизмов в проектировании встроенных систем // Научно-технический вестник СПбГУ ИТМО. Выпуск 14. Информационные технологии,
вычислительные и управляющие системы. - СПб.: СПбГУ ИТМО, 2004. -С. 164-169.
15.Ковязин P.P., Платунов А.Е. Приборные контроллеры // Приборостроение и средства автоматизации. - 2005. - № 1. - С. 50-52.
16. Баранов И.В., Платунов А.Е., Платунов Е.С. Учебная лаборатория «Физика низких температур». // Физическое образование в вузах. -2007. -Т.13,№4.-С. 121-127.
17.Лукичев А.Н., Платунов А.Е. Паттерны проектирования встроенных систем // Научно-технический вестник СПбГУ ИТМО. Выпуск 39. Исследования в области информационных технологий. - СПб.: СПбГУ ИТМО, 2007.—С. 114-121.
18. Баранов И.В., Платунов А.Е., Платунов Е.С. Теплофизическая лаборатория низких температур // Известия вузов. Приборостроение. -2009. - T.52, № 5. - С. 65-69.
Книжные издания:
19.Платунов А.Е., Приблуда A.A., Скорубский В.И., Черемисина О.Н. Теория проектирования ЭВМ: учебное пособие по лабораторному практикуму. -JI.: ЛИТМО, 1988. - 66 с.
20. Платунов А.Е., Скорубский В.И. Основы методики разработки РЭА на микропроцессорах и микро-ЭВМ. - М.: Изд-во заочного ин-та ЦП BHTO приборостроителей им. С.И. Вавилова, 1989. - 64 с.
21. Платунов А.Е., Скорубский В.И., Ожиганов A.A., Черемисина О.Н. Однокристальные микро-ЭВМ: учебное пособие. - Л.: ЛИТМО, 1991. - 49 с.
22.Терминологический словарь по электронной технике / В.Н. Вениаминов и др.; под ред. Г.Н. Грязина и И.П. Жеребцова. - СПб.: Политехника, 2001. - 783 с. - ISBN 5-7325-0376-5.
23-Ключев А.О.. Ковязина Д.Р., Кустарев П.В., Платунов А.Е. Аппаратные и программные средства встраиваемых систем. Учебное пособие: - СПб.: СПбГУ ИТМО, 2010. - 286 с.
24.Лукичев А.Н., Николаенков A.B., Платунов А.Е., Постников Н.П. Проектирование встроенных систем. Модели вычислений. Учебное пособие: - СПб.: СПбГУ ИТМО, 2010. - 170 с.
Научные статьи в журналах и сборниках трудов:
25.Платунов А.Е., Скорубский В.И. Комплекс средств для изучения принципов проектирования МП-систем // Применение микроЭВМ в учебном процессе. - Л.: ЛИАП, 1983. - С. 30-35.
26. Платунов А.Е. Исследование характеристик микропроцессорных систем с помощью аппаратно-программного монитора // Теория и применение микропроцессорных средств. - Куйбышев: КптИ, 1985. - С. 42-47.
27. Платунов А.Е., Платунов С.Е., Свинолобов В.Г. Аппаратные средства поддержки программной совместимости микро-ЭВМ // Архитектура и
проектирование вычислительных систем. - Рига: РП.И, 1988. - С. 21-28.
28. Шатунов А.Е., Платунов С.Е., Скорубский В.И. Функционально-расширяемая мониторная система // Вопросы технологии программирования. - Л.: ЛИИАН, 1988. - С. 145-150.
29. Гавриков В.О., Платунов А.Е., Никифоров Н.Л. Комплекс технических средств для систем железнодорожной автоматики // Автоматика, телемеханика и связь. - 1998. -№ 11. - С. 5-10.
30. Платунов А.Е., Постников Н.П., Чистяков А.Г. Механизмы граничного сканирования в неоднородных микропроцессорных системах // Chip News.-2000.-№ 10.-С. 8-13.
31.Ключев А.О., Кустарев П.В., Платунов А.Е., Скорубский В.И., Стародубцев Э.В. Высоконадежный управляющий модуль М386.2 // Научно-технические разработки СПб ГИТМО(ТУ). - СПб.: СПб ГИТМО (ТУ), 2001.-С. 218-219.
32.Ключев А.О., Кустарев П.В., Платунов А.Е. Контроллеры с микроэнергопотреблением в распределенных системах управления // Компоненты и технологии. - 2001. - № 7. - С. 80-83.
33.Ключев А.О, Платунов А.Е. Встроенные инструментальные средства современных микроконтроллеров // Электронные компоненты. - 2002. -№7.-С. 94-97.
34. Ключев А.О., Кустарев П.В., Платунов А.Е. Инструментальные и учебные контроллеры семейства SDK // Компоненты и технологии. - 2002. - № 5. - С. 96-99.
35.Платунов А.Е., Чистяков А.Г. Проектирование смешанных систем на микроконтроллерах и элементах реконфигурируемой аппаратуры // Электронные компоненты. - 2002. - № 8. - С. 83-89.
36.Ковязин P.P., Платунов А.Е. Программирование микроконтроллерных систем // Электронные компоненты. - 2003. - № 4. - С. 65-70.
37. Платунов А.Е., Постников Н.П. Перспективы формализации методов проектирования встроенных систем // Электронные компоненты. - 2005. -№1.-С. 24-29.
38.Платунов А.Е. Роль и проблемы высокоуровневого этапа проектирования встраиваемых вычислительных систем II Компоненты и технологии. -2009. -№ 4. - С. 98-100.
39. Платунов А.Е. Научный и учебно-производственный кластер «Встраиваемые вычислительные системы» СПбГУ ИТМО II Встраиваемые системы. - 2009. - № 4. - С. 6-10.
Тезисы докладов на научно-технических семинарах, конференциях и
конгрессах:
40. Марин A.B., Платунов А.Е., Скорубский В.И. Универсальный контроллер со средствами автоматизации микропрограммирования // Синтез управляющих устройств на основе микропроцессоров и однородных сред: материалы семинара. - М.: Наука, 1980. - С. 68-70.
41.Заславский С.Б., Платунов А.Е., Скорубский В.И., Черемисов В.А. Микроконтроллеры с телевизионным дисплеем и их применения // Микропроцессорные системы: материалы семинара. - Л.: ЛДНТП, 1983. -С. 30-35.
42.Платунов А.Е., Скорубский В.И. Проблема выбора и загрузки специализированной мультимикропроцессорной системы // Программное обеспечение микропроцессорных устройств и микро-ЭВМ: материалы семинара. - М.: МДНТП, 1984. - С. 17-21.
43.Ключев А.О., Платунов А.Е. Инструментальный сервер // Сб. тез. ДИМЭБ -96.-СПб., 1996.-С. 211.
44. Гавриков В.О., Григорьев В.В., Платунов А.Е., Шубинский И.Б. Микропроцессорная система диспетчерской централизации «Тракт» нового поколения // Информационные технологии на железнодорожном транспорте: материалы конференции - СПб.: 1997. - С. 163-173.
45.Гавриков В.О., Платунов А.Е., Шубинский И.Б. Механизмы обеспечения функциональной безопасности транспортных информационно-управляющих систем // В сб. тезисов VII Международной конференции «Региональная информатика 2000». Часть 1. - СПб.: СПОИСУ, 2000. - С. 121.
46. Гавриков В.О., Платунов А.Е. Отказоустойчивая информационная система управления движением поездов // В сб. тезисов VII Международной конференции «Региональная информатика 2000». Часть 1.- СПб.: СПОИСУ, 2000. -С. 120.
47.Ключев А.О., Кустарев П.В., Платунов А.Е., Яричин Е.М. Современные микропроцессорные и компьютерные средства автоматизированных систем диспетчерского управления наружным освещением // Энергоэффективность систем жизнеобеспечения города: материалы VII Всероссийской науч.-практ. конф., 8 дек. 2006 г. - Красноярск: ИПЦ КГТУ, 2006. - С. 241-245.
48.Платунов А.Е. Подготовка специалистов в области встраиваемых вычислительных систем // Тр. Первого Санкт-Петербургского конгр. «Профессиональное образование, наука, инновации в XXI веке». - СПб.: СПбГУ ИТМО, 2007. - С. 75-80.
49. Kustarev P., Platunov A. Problems of Abstract Representation of Embedded Systems at High-level Stages Design // Proceedings of the International Workshop on Networked embedded and control system technologies: European and Russian R&D cooperation (NESTER), 4-5 July 2009. - Milan: INSTICC PRESS.-P. 100-107.
Тиражирование и брошюровка выполнены в учреждении «Университетские телекоммуникации» 197101, Санкт-Петербург, Саблинская ул., 14 Тел.(812)233 4669 объе1й 2,0 у. п.л. Тираж 100 экз.
Оглавление автор диссертации — доктора технических наук Платунов, Алексей Евгеньевич
ОГЛАВЛЕНИЕ.
СПИСОК СОКРАЩЕНИЙ И ОБОЗНАЧЕНИЙ.
ВВЕДЕНИЕ.
1. ПРОБЛЕМЫ ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ.
1.1. Встраиваемые вычислительные системы.
1.1.1. Понятие встраиваемой вычислительной системы.
1.1.2. Проектирование программно-реализованных встраиваемых систем
1.1.3. Встроенное программное обеспечение.33 |
1.1.4. Классификация встраиваемых систем.
1.2. Состояние и перспективы высокоуровневого проектирования ВсС.
1.2.1. Проектирование заказных микропроцессорных систем.
1.2.2. Методики проектирования встраиваемых систем.
1.2.3. Языки описания архитектуры встраиваемых систем.
1.3. Предпосылки повышения уровня абстракции в методиках проектирования встраиваемых систем.
1.3.1. Кризис методик проектирования встраиваемых систем.
1.3.2. Перспективы развития методик проектирования встраиваемых систем.
1.4. Выводы.
1.5. Постановка задачи.
2. АРХИТЕКТУРНОЕ ПРОЕКТИРОВАНИЕ ВСТРАИВАЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ.
2.1. Система архитектурных абстракций ВсС.
2.1.1. Архитектурное проектирование и группы архитектурных абстракций.
2.1.2. Вычислительные и невычислителъные абстракции.
2.1.3. Элементы архитектурного проектирования.
2.1.4. Проектное пространство ВсС и фазы организации вычислительного процесса «Design-Time /Run-Time».
2.2. Проектирование архитектуры ВсС.
2.2.1. Архитектурная платформа и критерии проектирования архитектуры.
2.2.2. Шаблоны процессов проектирования ВсС.
2.2.3. Реализация архитектурных моделей встраиваемых систем.
2.2.4. Проектирование микроархитектуры ВсС.
2.2.5. Роль моделирования в архитектурном проектировании ВсС.
2.3. Аспектная модель процесса проектирования ВсС.
2.3.1. Аспектный подход к проектированию ВсС.
2.3.2. Аспектное пространство процесса проектирования и целевой системы.
2.3.3. Архитектура ВсС, архитектурные агрегаты. Классификация архитектурных моделей.
2.3.4. Методы и средства аспектного анализа.
2.3.5. Аспектная классификация ВсС.
2.4. Выводы.
3. МОДЕЛИ ВЫЧИСЛЕНИЙ ВСТРАИВАЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ.
3.1. Архитектурная абстракция «модель вычислений» в проектировании ВсС
3.1.1. Поведенческий аспект архитектурной модели.
3.1.2. Понятие «модель вычислений» в проектировании встраиваемых систем.
3.1.3. Совместимость и синхронизация в моделях вычислений.
3.1.4. Базовые модели вычислений встраиваемых систем.
3.2. Средства моделирования вычислительных процессов встраиваемых систем.
3.2.1. Способы описания распределенных ВсС.
3.2.2. Симуляция моделей вычислений.
3.2.3. Инструментальный комплекс моделирования вычислительных процессов Ptolemy II.
3.3. Объектно-событийнаямодель вычислений распределенных ВсС.
3.3.1. Общие положения объектно-событийной модели.
3.3.2. Элементы объектно-событийной модели.
3.3.3. Расчет временных характеристик объектно-событийной модели
3.3.4. Расширение ОСМВ на основе денотативного описания.
3.4. Выводы.
4. ИСПОЛЬЗОВАНИЕ РАЗРАБОТАННЫХ МЕТОДОВ И СРЕДСТВ ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ.
4.1. Анализ технических решений уровня реализации ВсС.
4.1.1. Пример подсистемы визуализации аналитического прибора.
4.1.2. Пример проектирования драйвера периферийного интерфейса.
4.1.3. Проектирование специализированных вычислителей системы железнодорожной автоматики «Тракт».
4.2. Принцип актуализации вычислительного процесса в проектировании ВсС.
4.2.1. Модель актуализации вычислительного процесса.
4.2.2. Фазы актуализации вычислительного процесса ВсС.
4.3. Прототип САПР на базе ОСМВ.
4.3.1. Микроархитектура вычислителя NL3.
4.3.2. Модели и параметры DPU.
4.3.3. Автоматизированная система прикладного пользовательского программирования NL3.
4.3.4. Средства прикладного пользовательского программирования вычислителей NL1 и NL2.
4.4. Инструментальный аспект проектирования ВсС.
4.4.1. Инструментальный аспект архитектурной модели ВсС.
4.4.2. Инструментальный комплекс вложенной отладки распределенных ВсС.
4.4.3. Динамические инструментальные компоненты.
4.4.4. Инструментальный комплекс МЗР.
4.5. Оценка опыта проектирования ВсС коллектива НПФ «ЛМТ».
4.6. Выводы.
5. ПОДГОТОВКА СПЕЦИАЛИСТА-РАЗРАБОТЧИКА ВСТРАИВАЕМЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ.
5.1. Состояние и тенденции в подготовке специалистов по проектированию ВсС.
5.1.1. Модель знаний выпускника вуза — специалиста по вычислительной технике.
5.1.2. Проектирование «от зон компетенции».
5.1.3. Программы подготовки специалистов в области выичслительной техники.
5.2. Модернизация программы профильной подготовки разработчиков ВсС
5.2.1. Внедрение методов и средств архитектурного проектирования встраиваемых систем в процесс подготовки специалистов и практическую деятельность производственных коллективов.
5.2.2. Проблемы и предложения в области модернизации программы профильной подготовки разработчиков ВсС.
5.3. Практика подготовки специалистов — разработчиков ВсС.
5.3.1. Реализаг(ия инновационной образовательной программы.
5.3.2. Аппаратно-программная платформа SDK для подготовки специалистов по проектированию встраиваемых систем.
5.4. Выводы.
Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Платунов, Алексей Евгеньевич
Ответ на вопрос о том, закончила ли вычислительная техника свое развитие, будет зависеть главным образом от нашей смелости и фантазии.
Эдгар Дейкстра
Остин, Техас, 19 ноября 2000 года
Актуальность темы. Стремительный рост потребности во встраиваемых вычислительных системах (ВсС) различного назначения заставляет разработчиков активно совершенствовать методы и средства проектирования. Встраиваемые (или встроенные) системы и сети (embedded systems & networks) можно определить как специализированные (заказные) микропроцессорные системы, непосредственно взаимодействующие с объектом контроля или управления и объединенные с ним конструктивно.
Активно растет доля ВсС со сложной внутренней организацией, которая проявляется в таких особенностях, как многопроцессорная гетерогенная архитектура, распределенный характер вычислений, широкий диапазон потенциально доступных разработчику вычислительных ресурсов. Большинство сегодняшних ВсС составляют распределенные информационно-управляющие системы (РИУС), в которых доля технических решений, характерных для иных классов вычислительных систем (ВС), не является доминирующей. Это позволяет сделать вывод об актуальности поиска и развития всего многообразия технических решений в области ВсС (а не только ограниченного их числа в рамках ряда канонических аппаратно-программных платформ), а также методов и средств Pix проектирования.
Процесс создания ВсС характеризуется высокой сложностью. Это определяется сочетанием таких условий проектирования, как нестандартность задачи, требование технической оптимальности решений
10 модель ограниченных вычислительных ресурсов), минимальные временные и финансовые бюджеты разработки, присутствие большого числа дополнительных требований' и ограничений (надежность, ограничения реального времени, тяжелые условия эксплуатации и многое другое).
Ключевой особенностью создания ВсС следует считать необходимость комплексного проектирования, охватывающего практически все уровни организации ВС. Однако сегодня в достаточной степени формализованы и автоматизированы лишь конечные и часть средних этапов маршрутов проектирования.
Таким образом, первоочередное значение приобретает развитие методов и средств высокоуровневого (архитектурного, HLD - High Level Design) проектирования ВсС, где центральное место занимает формирование цельного взгляда на организацию всех фаз вычислительного процесса, как собственно на цель проектирования.
Активные работы в данном направлении проводят отечественные коллективы под руководством А.Н. Терехова, В.В. Топоркова, А.К. Кима, специалисты ИСП РАН, ТОМИ им. В.А.Стеклова, СПбГУ ИТМО. Из зарубежных специалистов в первую очередь следует отметить работы А. Санджованни-Винсентелли, Е. Ли, А. Феррари, Г. Мартина, Г. Axa, А. Джеррайи.
Создание четкой системы понятий архитектурного уровня позволит разработчику ВсС эффективно работать не на уровне примеров реализаций, а на уровне принципов организации ВС/вычислительного процесса. Важнейшей задачей является создание системы архитектурных абстракций, в которых не противопоставляются аппаратная и программная составляющие ВС, но при этом охватываются все уровни технических решений.
Практическая польза от подобной формализованной системы понятий состоит в возможности развития на ее основе общей теории и методологии проектирования ВсС, создания эффективных методик и САПР архитектурного и сквозного проектирования ВсС.
Следует признать, что в подавляющем большинстве коллективов проектировщиков ВсС сегодня недостаточно высоко оценивается роль и трудоемкость этапов высокоуровневого проектирования, отсутствует адекватный технический язык для общения на этом уровне. Они оперируют лишь конкретными реализациями вычислительных механизмов (то есть «ассемблерными кодами», в которых трудно или невозможно проследить концептуальные моменты и решения). Мери Шоу в статье «Мы можем обучать информатике лучше» пишет: «Давайте организуем наши курсы вокруг идей, а не вокруг артефактов. Это сделает наши цели более ясными как для студентов, так и для преподавателей. Машиностроительные институты не преподают проектирование бойлера, они преподают термодинамику. В то же время, как минимум два из основных курсов по информатике «Создание компиляторов» и «Операционные системы» являются артефактными динозаврами программирования». [157]. С момента опубликования статьи ситуация кардинально не поменялась.
Система вычислительных архитектурных абстракций может привнести эффективный язык общения в область проектирования ВсС, повысить «прозрачность» разработок, резко ускорить развитие вычислительных архитектур. Однако для этого необходимы усилия не только со стороны действующих разработчиков вычислительной техники, но и поддержка высшей школы в части модернизации учебного процесса на профильных кафедрах университетов.
Целью работы является создание методологической и теоретической базы высокоуровневого автоматизированного проектирования встраиваемых вычислительных систем, основывающейся на системе архитектурных вычислительных абстракций. Это обеспечит развитие методов и средств архитектурно - структурного проектирования в комплексе с формированием сценариев и инфраструктуры процесса проектирования.
Задачи исследований. Для достижения указанной цели в работе ставились и решались следующие задачи.
1. Постановка проблемы фрагментарности методов и средств высокоуровневых этапов проектирования для ВсС, критичных к качеству архитектурных решений. Поиск возможностей повышения качества проектирования ВсС и обоснование необходимости использования вычислительных архитектурных абстракций как основного инструмента повышения эффективности процесса проектирования.
2. Разработка системы абстракций, которая на этапе архитектурного проектирования адекватно отражает вычислительные и невычислительные аспекты ВсС, учитывает сценарий и инфраструктуру процесса проектирования. Формирование в рамках аспектной модели' проектирования ВсС критериев надежности и качества проектирования архитектуры ВсС.
3. Разработка методики высокоуровневого проектирования ВсС, в том числе:
• разработка метода поиска архитектурных решений ВсС, обеспечивающего эффективный анализ и синтез вариантов организации вычислительного процесса ВсС;
• разработка метода создания корректного и детального архитектурного представления ВсС, выступающего в качестве исходных спецификаций для этапа реализации проекта;
• развитие моделей вычислений распределенных ВсС;
4. Разработка методики формирования инструментальной инфраструктуры проекта ВсС на основе декомпозиции вычислительного процесса по фазам проектирование / конфигурирование / исполнение жизненного цикла ВсС.
5. Создание методических основ внедрения технологий и средств высокоуровневого проектирования ВсС на базе вычислительных архитектурных абстракций и аспектной модели в научно-производственных коллективах и профильных высших учебных заведениях.
Методы исследования. Теоретические и практические исследования базируются на комплексном использовании положений линейной алгебры, теории вероятностей, теории множеств, формальной и темпоральной логики, теории конечных автоматов, теории графов, теории взаимодействия открытых систем, методов системного и функционального анализа, функционального и объектно-ориентированного программирования и проектирования, имитационного моделирования, структурно-функционального описания аппаратуры.
Научная новизна работы- состоит в теоретическом- обобщении и решении научной проблемы, имеющей важное народнохозяйственное значение в области автоматизации проектирования встраиваемых вычислительных систем. В результате исследований автором получены следующие основные научные результаты:
1. Предложены оригинальные базовые определения ВсС и платформ, классификация ВсС, постановка задач проектирования в области ВсС на основе системы архитектурных абстракций.
2. Разработана оригинальная система вычислительных абстракций архитектурного уровня, определяющая стратегию и маршрут процесса проектирования ВсС.
3. Разработана аспектная методика проектирования ВсС, базирующаяся на созданной системе архитектурных абстракций и введенных понятиях инфраструктуры проекта и инфраструктуры создаваемой целевой системы. Разработаны методы поиска архитектурных решений ВсС и методы представления архитектуры ВсС для этапа реализации в рамках аспектной методики.
4. На основе исследования критически, важных аспектов проектирования в рамках предложенной модели введено понятие единого проектного пространства архитектуры ВсС, включающее наряду с другими такие важнейшие координаты как реконфигурируемость, совокупность фаз организации вычислительного процесса (включая проектирование, конфигурирование и исполнение), распределение инструментальных компонент. На этой основе созданы методы организации вычислительного процесса ВсС и формирования инструментальной инфраструктуры, в том числе, для распределенных встраиваемых систем.
5. Предложены и исследованы новые модели вычислений, составляющие класс объектно-событийных моделей. Они обеспечивают эффективное представление информационной и управляющей компонент, в первую очередь, распределенных ВсС на этапах архитектурного, структурного, логического проектирования.
6. Разработана типовая инструментальная цепочка проектирования ВсС на базе средств объектно-событийного моделирования разрабатываемой системы. В рамках инструментального аспекта ВсС предложен принцип совместного проектирования инструментальной и целевой системы.
Основные защищаемые положения диссертационной работы включают:
1. Принцип использования архитектурных абстракций в проектировании ВсС и систему абстракций, важнейшие из которых: аспект проектирования, архитектурная платформа, архитектурный агрегат, вычислительный механизм.
2. Перечень критически важных аспектов проектирования ВсС в рамках аспектной модели вычислительной архитектуры.
3. Аспектную методику проектирования ВсС, в рамках которой введено понятие архитектурной модели ВсС с абстрактным, виртуальным, реализуемым уровнями ее конкретизации.
4. Понятие единого проектного пространства архитектуры ВсС и концепцию, организации вычислительного процесса ВсС на фазах проектирования, конфигурирования и исполнения как единого процесса проектирования вычислительной системы с явным формированием и выбором' общей архитектуры. В рамках данного подхода проектируются (выбираются) в комплексе такие компоненты ВсС, как макроархитектура, множество микроархитектур, инструментарий, системное программное обеспечение и другие, которые традиционно разделяются разработчиками на изолированные (в контексте принятия концептуальных, архитектурных решений) части.
5. Принцип совместного проектирования целевой ВсС и ее инструментальной инфраструктуры, инструментальная модель ВсС.
6. Состав учебных модулей и базовые принципы подачи, учебного материала для подготовки специалиста в области высокоуровневого проектирования сложных ВсС.
Практическая ценность. Полученные результаты повышают надежность и качество ключевых принимаемых проектных решений при создании ВсС за счет расширения пространства поиска архитектурных решений, нового механизма их анализа, большей прозрачности процесса проектирования в целом.
Разработчик получает инструмент комплексного представления продуктов этапа высокоуровневого проектирования ВсС, что обеспечивает высокую степень их повторного использования и эффективный контроль фазы реализации проекта.
В значительной степени решается проблема семантического разрыва областей компетенции специалистов по проектированию аппаратной и программной составляющих ВсС на основе понятия вычислительного механизма и определения встроенного программного обеспечения как совокупности компонент конфигурирования/программирования на всех этапах организации вычислительного процесса ВсС.
Конкретные рекомендации и разработанные инструментальные средства обеспечивают внедрение предлагаемой автором парадигмы проектирования ВсС в научно-производственных коллективах и в учебный процесс профильных высших учебных заведений.
Кроме того, в результате исследования разработано и опробовано значительное число новых технических решений (вычислительных механизмов) в части аппаратно-программной реализации ВсС, зафиксированных в виде вычислительных платформ, которые ориентированы на повторное использование.
1. Реализация результатов работы. Теоретические и практические результаты, полученные в диссертационной работе, использованы в научно-исследовательских и опытно-конструкторских работах, проводимых в СПбГУ ИТМО [15, 34] и в научно-производственной фирме «ЛМТ» [36], научным руководителем или ответственным исполнителем которых является автор. Часть из них перечислена ниже:
• «Разработка способов формального представления проектной информации для технологии сквозного проектирования встроенных вычислительных систем» (СПбГУ ИТМО, 2003-2007 гг.);
• Серия работ по созданию микропроцессорных систем прецизионного управления в составе нанотехнологических комплексов (ЗАО «НТ МДТ», в рамках ОКР «Разработка и освоение производства приборов и оборудования для нанотехнологии», 2003-2006 гг.);
• «Разработка шлюзов контроллерных сетей серии (ОАО «Приборный завод «Тензор», 2004 г.);
• «Разработка программируемых блоков ТБК сбора информации и управления в составе лабораторных теплофизических измерительных комплексов» (СПбГУНиПТ, 2004 г.);
• «Разработка предложений в комплексную программу создания Интеллектуальной' транспортной системы в Санкт-Петербурге по направлению «Комплекс информационно-вычислительных средств ИТС Санкт-Петербурга» (ЗАО «НИПИ ТРТИ», 2005 г., в соответствии с «Концепцией создания ИТС в Санкт-Петербурге на 2005-2008 гг.»);
• Серия ОКР по созданию цифровых электронных модулей аналитико-технологических приборов по направлению «Разработка учебно-научной лаборатории для нанодиагностики и нанотехнологий на базе сканирующей зондовой микроскопии, спектроскопии и литографии» (ООО «НТ-СПб», 2006-2007 гг.);
• «Разработка архитектуры и методики проектирования аппаратных и программных средств систем на кристалле, комбинирующих различные типы ядер и способы обработки информации» (СПбГУ ИТМО, 2009-2010 гг.).
Результатами НИОКР являются специализированные вычислительные платформы и комплексы технических средств, на основе которых серийно выпускается большое число прикладных систем и приборов- (приложение 6.6). Среди них системы распределенной автоматики для железнодорожного (КТС «Тракт», КТС «Бриз») и судового (КТС АР3000) транспорта, для задач энергетики и ЖКХ (СУНО «Луч2», СУМЭ «ЛучЗ», АСКУЭ «Луч-ТС»); семейство прецизионных теплофизических приборов ИТС с уникальными контроллерами ТЕК нескольких версий. Производятся и развиваются семейства зондовых сканирующих микроскопов «НаноЭдьюкатор» (платформа ЫС5091) и «МиниЛаб» (платформа МЬ).
Результаты работы использованы в учебных лекционных курсах, которые читались автором в СПбГУ ИТМО, в МИПК СПб ГИТМО (ТУ) и в ряде других организаций на протяжении более чем 30 лет. Автором создано четыре поколения учебно-лабораторного микропроцессорного оборудования, которое обеспечивает курсы по организации, проектированию и применению
ВС общего назначения и ВсС. Сегодня семейство учебных контроллеров SDK используется более чем в 45 университетах РФ и Республики Беларусь по информатике, вычислительной технике и смежным специальностям.
Под руководством автора в рамках «Инновационной образовательной программы СПбГУ ИТМО» (Приоритетный национальный проект «Образование», 2007 — 2008гг.) создано и успешно развивается новое направление магистерской подготовки «Встроенные вычислительные системы», которое включает две специализации: 230100.68.31 «Проектирование встроенных вычислительных систем» и 230100.68.32 «Системотехника интегральных вычислителей. Системы на кристалле». В 4 рамках направления в соответствии с программой развития СПбГУ ИТМО как, Национального исследовательского университета создана магистерская программа «Сетевые встроенные системы».
Развитием данной работы являются 7 успешно защищенных кандидатских диссертаций, выполненных аспирантами под руководством автора. Практическое использование результатов диссертационной работы подтверждено соответствующими документами о внедрении (приложение 6.7).
Апробация работы. Основные результаты работы докладывались и обсуждались в 1979 — 2010 годах на следующих Всесоюзных, Всероссийских, Международных, региональных и отраслевых конференциях, семинарах и совещаниях: II Всесоюзном семинаре «Синтез управляющих устройств на основе микропроцессоров и однородных сред» (Рязань, 1979), Республиканском семинаре «Специализированные микропроцессорные системы» (Челябинск, 1981), межотраслевом семинаре «Применение микропроцессорного комплекта БИС К584 в разработке радиоэлектронной аппаратуры» (Минск, 1983), семинаре Рабочей группы по технологии программирования ГКНТ СМ СССР «Технология программирования микропроцессорной техники» (Брест, 1984), Всероссийской конференции
Микропроцессорные системы» (Челябинск, 1984), Всесоюзной конференции «ДИАЛОГ-84-МИКРО» (Ленинград, 1984), Координационном, совещании по межвузовской целевой комплексной программе «Микропроцессоры и микроЭВМ» (Фрунзе, 1985), II Международной конференции «Информационные технологии на железнодорожном транспорте» (СПб., 1997), I Всероссийской конференции «Компьютерные технологии в науке, проектировании, производстве» (Н.Новгород, 1999), VII Международной конференции «Региональная информатика 2000» (СПб., 2000), I Всероссийской конференции «Разработка электроники на заказ» (СПб., 2005), VII Всероссийской научно-практической конференции «Энергоэффективность систем жизнеобеспечения города» (Красноярск, 2006), Третьей международной научно-практической конференции «Исследование, разработка и применение высоких технологий в промышленности» (СПб., 2007), I и II Санкт-Петербургском конгрессе «Профессиональное образование, наука, инновации в XXI веке» (СПб., 2007, 2009), Международной конференции «Information and communication technologies in the 7 Framework Program of the EU. Russia — EU Coopération» (Москва, 2008), Международной конференции «ICINCO - Networked embedded and control system technologies: European and Russian R&D coopération» (Милан, 2009), Международной конференции «CIV EL-2009» (Москва, 2009), научной и учебно-методической конференции СПб ГИТМО (ТУ) - СПбГУ ИТМО (СПб, 1991 - 2010), а также на других конференциях и семинарах.
Публикации. По теме диссертации опубликованы 83 печатные работы, среди которых 18 статей в изданиях, включенных в список ВАК РФ, терминологический словарь, брошюра, 6 учебных пособий, более 30 статей в научно-технических журналах и сборниках, а также тезисы и тексты докладов на различных конференциях и семинарах. Список 49 основных работ приведен в конце автореферата.
Структура и объем диссертационной работы.
Диссертация состоит из введения, 5 глав, заключения, списка использованной литературы и приложения. Основной объем диссертации составляет 314 страниц, в том числе список литературы 168 наименований.
Заключение диссертация на тему "Теоретические и методологические основы высокоуровневого проектирования встраиваемых вычислительных систем"
5.4. Выводы
1. В программах подготовки специалистов по ВсС сегодня отсутствует цельный взгляд на организацию ВС, который позволяет абстрагироваться от особенностей ее реализации.
2. Рассмотрено влияние на процесс проектирования по оси «глубины погружения» в аппаратно-программную организацию ВсС зон компетенции ведущих специалистов проекта. Предложен набор компетенций команды проектировщиков ВсС, основанный на рассматриваемой в работе системе архитектурных абстракций, который позволяет организовать процесс проектирования ВсС с требуемой «глубиной погружения» и гарантированным качеством.
3. Показано большое число "размытостей" и пробелов в компьютерных дисциплинах. Отсутствуют определения базовых понятий, нет четкой системы абстракций в области вычислительной архитектуры и в области проектирования ВС.
4. В типовых учебных планах не отражены современные потребности и перспективные направления в области проектирования ВсС.
5. Существуют примеры фрагментарной переподготовки (повышения квалификации) в области ВсС силами ряда коммерческих фирм в части использования САПР с привязкой к определенным семействам программируемой элементной базы, однако, практически отсутствует преподавание методологии проектирования, особенно в сегменте высокоуровневого проектирования ВсС и СнК.
6. Показано, что в подготовке кадров для области проектирования ВсС необходим акцент на вопросах системного проектирования вычислительных архитектур с высокой степенью программируемое™ на различных уровнях организации.
7. Необходимо радикально повысить степень общности в подаче учебного, методического и технического материала в области ВсС, стремиться к исключению < противопоставления аппаратного и программного "мировоззрения" в процессах проектирования ВсС на верхних уровнях.
8. На основе методологической и теоретической базы высокоуровневого проектирования ВсС, представленной в работе, создана методология преподавания принципов высокоуровневого проектирования ВсС, пригодная для использования в рамках вузовской подготовки.
9. Разработаны учебные планы магистерских специализаций «Проектирование встроенных вычислительных систем», «Системотехника интегральных вычислителей. Системы на кристалле», «Сетевые встраиваемые системы»: По данным специализациям успешно проводится' подготовка специалистов.
10.Под руководством автора и при его' непосредственном1 участии создана аппаратно-программная платформа SDK учебно-лабораторного и инструментального назначения. Платформа включает около десяти моделей стендового оборудования и постоянно развивается. Платформа успешно используется более чем в 50-ти университетах, колледжах и проектных организациях РФ.
11 .Разработанные учебные методические материалы и стендовое оборудование позволяют эффективно внедрять методологию высокоуровневого, архитектурного проектирования, включая подходы, предложенные автором, в практическую деятельность профильных научно-производственных фирм и коллективов.
Заключение
В работе представлена методологическая и теоретическая база высокоуровневого автоматизированного проектирования встраиваемых вычислительных систем, основывающаяся на системе вычислительных архитектурных абстракций. Это обеспечивает развитие методов и средств архитектурно — структурного проектирования в комплексе с формированием сценариев и инфраструктуры процесса проектирования встраиваемых вычислительных систем. Предложены теоретические основы построения САПР системного уровня, созданы модели, алгоритмы и методы для синтеза и анализа архитектурных решений в области проектирования встраиваемых вычислительных систем.
В работе получены следующие основные результаты:
1. Предложено определение ВсС, основанное'на характере взаимодействия ВС и контролируемого и/или управляемого объекта физического мира, не ограничивающее сложность, топологию и принципы организации системы.
2. Предложена система- архитектурных абстракций ВсС и шаблоны процессов архитектурного проектирования ВсС для случаев общего и частных технических заданий.
3. Предложена обобщающая аспектная модель процесса проектирования ВсС. Конкретизированы и формализованы основные положения аспектной модели проектирования и базовые элементы моделирования: А-модель, состоящая из А-агрегатов, аспектное пространство процесса проектирования, аспектные проекторы, аспектные модели, характеристические функции.
4. Даны классификации А-агрегатов и А-моделей. Предложена аспектная классификация как самих ВсС, так и процессов их проектирования, позволяющая наглядно представлять свойства систем и критерии их создания, контролировать-процесс проектирования, сравнивать проектные платформы, анализировать выполненные проекты ВсС.
5. Определено понятие «архитектурная платформа», выступающее в качестве инструмента повторного использования концептуальных решений в процессе проектирования ВсС. Предложена классификация ВсС на основе понятия «проектная вычислительная платформа», которая позволяет систематизировать базовые вычислительные архитектуры и связанные с ними технологии проектирования ВсС.
6. В работе в качестве поведенческого аспекта архитектурного проектирования подробно рассматривается ключевая абстракция «модель вычислений» ВсС. Предложен класс объектно-событийных моделей вычислений* (ОСМВ), который' полно учитывает особенности распределенных ВсС. Разработан математический аппарат расчета характеристик ОСМВ и созданы методы синтеза и анализа поведенческих моделей ВсС, которые являются основой оригинальных САПР и средств моделирования распределенных ВсС.
7. Унифицировано представление «Design-Time» - «Run-Time» фаз вычислительного процесса, что позволяет использовать проектную ось «Design/Run-Time» для поиска более эффективной функциональной декомпозиции целевой ВсС. Формально процесс поиска обеспечивается разработанной моделью актуализации вычислительного процесса,
8. Предложен набор компетенций команды проектировщиков ВсС, основанный на рассматриваемой в работе системе архитектурных абстракций, который позволяет сократить, семантический разрыв в спецификациях маршрута высокоуровневого проектирования.
9. Создано и внедрено в учебный процесс магистерское направление «Встроенные вычислительные системы» в составе программ «Проектирование встроенных вычислительных систем», «Системотехника интегральных вычислителей. Системы на кристалле», «Сетевые встраиваемые системы». Разработанные учебные методические материалы и стендовое оборудование позволяют эффективно внедрять методологию высокоуровневого архитектурного проектирования, включая подходы, предложенные автором, в практическую деятельность профильных научно-производственных предприятий и коллективов.
Библиография Платунов, Алексей Евгеньевич, диссертация по теме Системы автоматизации проектирования (по отраслям)
1. Балашов Е.П., Пузанков Д.В. Проектирование информационно-управляющих систем. М. Радио и связь. 1987.
2. Баранов И.В., Платунов А.Е., Платунов С.Е. Теплофизическая лаборатория низких температур. // Приборостроение. № 5. 2009. С. 65—69.
3. Баранов И.В., Платунов А.Е., Платунов С.Е. Учебная лаборатория «Физика низких температур». // Физическое образование в вузах. Т. 13, № 4. 2007. С. 121-127.
4. Баранов С.И. Синтез микропрограммных автоматов. JL Энергия, Ленингр. отд-ние. 1979.
5. Барский А.Б., Шилов В.В. Потоковая вычислительная система: программирование и оценка эффективности. М. Новые технологии. 2003. 24 с.
6. Булычев Д. Прототипирование встроенных систем на основе описания макроархитектуры. // Диссертация на соискание учёной степени кандидата физ-мат наук. СПбГУ. 2004.
7. Бухтеев A.B. Методы и средства проектирования систем на кристалле. // Chip News. № 4 (77). 2003. С. 4-14.
8. Варшавский В.И., Розенблюм Л.Я., Цирлин Б.С. и др. Автоматное управление асинхронными процессами в ЭВМ и дискретных системах. М. Наука. 1981.
9. Вирт Н. Аппаратная компиляция. // Открытые системы. № 4-5. 1998. С. 7— 12.
10. Ю.Воеводин В.В. Информационная структура алгоритмов. М. Изд-во МГУ. 1997. 139 с.
11. П.Воеводин В.В. Математические модели и методы в параллельных процессах. М. Наука. 1986. 296 с.
12. Гавриков В.О., Григорьев В.В., Платунов А.Е., Шубинский И.Б. Микропроцессорная система диспетчерской централизации «Тракт»299нового поколения. // Информационные технологии на железнодорожном транспорте: докл. конф. СПб. 1997. С. 163-173.
13. Гавриков В.О.', Платунов А.Е., Никифоров H.JI. Комплекс технических средств для систем железнодорожной автоматики. // Автоматика, телемеханика и связь. № 11. 1998. С. 5—10.
14. Иванов А.Н. Технологическое решение REAL-IT: создание информационных систем на основе визуального моделирования. // Системное программирование. Сб. статей под. ред. А.Н.Терехова и Д.Ю.Булычева. СПб. 2004. С. 89-100.
15. Кафедра вычислительной техники СПбГУ ИТМО. URL: http://csnews.ifino.ru».
16. Кини P.JL, Райфа, X. Принятие решений при многих критериях: предпочтения и замещения. М. Радио и связь. 198L.
17. Ключев А., Кустарев П., Платунов А. Контроллеры с микроэнергопотреблением в распределенных системах управления. // Компоненты и технологии. №7. 2001. С. 80-83.
18. Ключев А.О. Методы и инструментальное обеспечение разработки распределенных информационно-управляющих систем с программируемой архитектурой. // Тезисы кандидатской диссертации. СПбГИТМО(ТУ). Санкт-Петербург. 1999.
19. Ключев А.О., Кустарев П.В., Платунов А.Е. Восьмиразрядные микроконтроллеры в системах автоматического управления. // Компоненты и технологии. № 1. 2001. С. 23—24.
20. Ключев А.О., Кустарев П.В., Платунов А.Е. Инструментальные и учебные контроллеры семейства SDK. // Компоненты и технологии. № 5. 2002. С. 96-99.
21. Ключев А.О., Кустарев П.В., Платунов А.Е. Распределенные системы управления. // Сб. тезисов ДИМЭБ. СПб. 1997. С. 216-217.
22. Ключев А.О., Кустарев П.В., Платунов А.Е., Скорубский В.И., Стародубцев Э.В. Высоконадежный управляющий модуль М386.2. // Научно-технические разработки СПб ГИТМО(ТУ). СПб. СПб ГИТМО (ТУ). 2001. С. 218-219.
23. Ключев А.О., Платунов А.Е. Встроенные инструментальные средства современных микроконтроллеров. // Электронные компоненты. № 7. 2002. С. 94-97.
24. Ключев А.О., Постников Н.П. Технология сквозного проектирования информационно-управляющих систем. // Тезисы докладов XXX научно-технической конференции ППС. СПб. ГИТМО(ТУ). 1999. 75 с.
25. Ковязин P.P., Постников Н.П. Модель DPU проблемно-ориентированного процессора NL3. // Сборник тезисов докладов конференции молодых ученых, Выпуск 5. СПб. СПбГУ ИТМО. 2010. С. 18-19.
26. Ковязин P.P., Постников Н.П. Разработка проблемно-ориентированных процессоров. // Сборник тезисов докладов конференции молодых ученых. Выпуск 5. СПб: СПбГУ ИТМО. 2010. С. 16-17.
27. Колонка редактора. //Встраиваемые системы. №1. 2009. С.6—10.
28. Кучински К. URL: http://cs.lth.se/edanl5.
29. Лукичев А.Н. Временные характеристики функциональных блоков при. дискретно-событийном моделировании встроенных систем. // Сборник, докладов ИММОД-2007. Том 1. СПб. ФГУП ЦНИИ' технологии судостроения. 2007.
30. Лукичев А.Н. Исследование моделей вычислений встроенных систем. // Магистерская дисс. СПбГУ ИТМО. 2005.
31. Лупанов О.Б. Асимптотические оценки сложности управляющих систем. М. Изд-во МГУ. 1984.
32. Научно-образовательное направление «Встроенные вычислительные системы», СПбГУ ИТМО. URL: http://embedded.ifmo.ru.
33. Непейвода H.H., Скопин И.Н. Основания, программирования. Москва-Ижевск. Институт компьютерных исследований. 2003. 868 с.
34. Официальный сайт ООО «ЛМТ». URL: http://lmt.ifmo.ru.
35. Парфенов В.В., Терехов А.Н. RTST технология программирования встроенных систем реального времени. // Сб. Системная информатика. Вып.5. Новосибирск. Сибирская издательская фирма РАН. 1997.
36. Платунов А.Е. Архитектурная модель цифровых вычислительных систем для встроенных применений. // Изв. вузов. Приборостроение. Т.44. №3. 2001. С.8-15.
37. Платунов А.Е. Архитектурные абстракции в технологии, сквозного проектирования встроенных вычислительных систем. // Науч.-техн. вестн. СПб ГИТМО (ТУ). СПб. СПб ГИТМО (ТУ). Вып. 6: Информационные, вычислительные и управляющие системы. 2002. С. 76—83.
38. Платунов А.Е. Заказные вычислительные платформы информационно-управляющих систем. Презентация компании ЛМТ. // Электронные компоненты. № 12. 2005. С. 42.
39. Платунов А.Е. Подготовка специалистов в области встраиваемых вычислительных систем. // Тр. Первого Санкт-Петербургского конгр.
40. Профессиональное образование, наука, инновации в XXI веке». СПб. СПбГУ ИТМО. 2007. С. 75-80.
41. Платунов А.Е., Постников Н.П. Перспективы формализации методов проектирования встроенных систем. // Электронные компоненты. № 1. 2005. С. 24-29.
42. Платунов А.Е., Постников Н.П. Формализация архитектурного проектирования информационно-управляющих систем. // Тезисы докладов XXXI научно-технической конференции ППС. СПб. ГИТМО(ТУ). 2000. С. 122.
43. Платунов А.Е., Постников Н.П., Чистяков А.Г. Механизмы граничного сканирования в неоднородных микропроцессорных системах. // Chip News. № 10. 2000. С.8-13.
44. Подиновский В.В., Ногин В.Д. Парето-оптимальные решения многокритериальных задач. М. Наука. 1982. 256 с.
45. Постников Н.П. Динамические инструментальные компоненты. Научно-технический вестник СПбГИТМО(ТУ). // Информационные, вычислительные и управляющие системы. СПб. СПбГИТМО(ТУ). № 6. 2002. С.83-88.
46. Постников Н.П. Обновление программного обеспечения распределенных микропроцессорных систем. // Компоненты и технологии. №3. СПб. 2004, С. 142-144.
47. Райли Д. Абстракция и структуры данных. Вводный курс. Пер. С англ. М. Мир. 1993. 752 с.
48. Смирнов O.JI. Автоматизация технологического проектирования:, Учеб. Пособие. СПб. СПбРУАП: 2001. 66 с,
49. Смит Дж., Наир Р. Архитектура виртуальных машин. // Открытые: системы. URL: www.osp.ru/os/2005/05-06/r85586/pl .html.
50. Соболь И.М., Статников Р.Б. Выбор оптимальных параметров в задачах со многими критериями. М. Наука. 1981.
51. Терехов А.Н. RTST технология программирования встроенных систем; реального времени. // Сб. "Записки, семинара кафедры системного программирования "CASE-средства RTST++". Вып.1. СПб. Издательство СПбГУ. 1998.
52. Терехов А.Н. Тезисы диссертации на соискание учёной степени доктора физ.-мат. наук. СПбГУ. 1991. URL: http://ant.tepkom.ru/publications/dbc/TerekJiovDoctthesis.pdf.
53. Терехов А.Н;, Романовский К.Ю., Кознов Дм.В., Долгов П.С., Иванов А.Н. Real: методология и CASE-средство для) разработки систем реального времени и информационных систем. // Программирование. №5. 1999. С. 44-52.
54. Топорков В.В. Функциональность недетерминированной модели распределенных^ вычислений; ,// Информационные технологии: №12. 2001. С. 2-5.
55. Топорков В;В. Модели и методы системного синтеза: М- Моск. энерг. инт. 1997.
56. Шалыто A.A. SWITCH технология. Алгоритмизация и программирование задач логического управления. СПб. Наука. 1998. 628с.
57. Шеннон К. Работы по теории информации и кибернетике. М. Изд-во иностр. литер. 1963.
58. Штойер Р. Многокритериальная оптимизация. М. Радио и связь. 1992.
59. Якубайтис Э.А. Информационные сети и системы. Справочная книга. М. Финансы и статистика. 1996. 368 с.
60. Agha G.A. Actors: A Model of Concurrent Computation in Distributed Systems // The MIT Press Series in Artificial Intelligence. MIT Press. 1986. 204 p.
61. Application Note 155. 1-Wire Software Resource Guide Device Description // Maxim Integrated Products. 2008. URL: http://www.maxim-ic.com/app-notes/index.mvp/id/155.
62. ARTEMIS Industry Association. URL: https://www.artemisia-association.org.
63. Balarin F., et al. Metropolis: An Integrated Electronic System Design Environment. Computer. Vol. 36, no. 4. April 2003. P. 45-52.
64. Barabanov A., Bombana M., Fominykh N., Gorla G., Terekhov A. Reusable objects for optimized DSP design // Embedded Microprocessor Systems. IOS Press. 1996. P. 433-442.
65. Berry G., Gonthier G. The Esterel synchronous programming language: Design, semantics, implementation // Science of Programming. 1992. Vol. 19. № 2. P. 87-152.
66. Boulytchev D., Lomov D. An Empirical Study of Retargetable Compilers. In Perspectives of System Informatics, Springer Berlin. Heidelberg. 2001.
67. Brooks C., Lee E.A., Liu X., Neuendorffer S., Zhao Y., Zheng H. Heterogeneous Concurrent Modeling and Design in Java. // Technical Memorandum UCB/ERL M04/27 University of California. Berkeley. July 29, 2004. Vol. 1,2,3.
68. Buck J.T., Ha S., Lee E.A., Messerschmitt D.G. Ptolemy: A Framework for Simulating and Prototyping Heterogeneous Systems. // Int. Journal of Computer Simulation special issue on "Simulation Software Development". April 1994. Vol. 4. P. 155-182.
69. Buck J.T., Ha S., Lee E.A., Messerschmitt D.G. Ptolemy: A mixed-paradigm simulation/prototyping platform in C++. // In Proceedings of the C++ At Work Conference, Santa Clara, CA. November 1991.
70. Chang H., Cooke L., Hunt M., Martin G., McNelly A., Todd L. Surviving the SOC Revolution: A Guide to Platform-Based Design. Kluwer Academic Publishers. November, 1999.
71. Clarke E.M., Emerson E.A., Sistla A.P. Automatic Verification of Finite-State Concurrent Systems Using Temporal Logic Specifications. // ACM Trans, on Programming Languages and Systems. Vol. 8. April 1986. P. 244—263.
72. Clifford E. Cummings. Correct Methods For Adding Delays To Verilog Behavioral Models. HDLCON. 1999.
73. Clifford E. Cummings. Verilog Coding Styles for Improved Simulation Efficiency. International Cadence User Group Conference. October 5-9, 1997.
74. CoFluent Design. URL: http://www.eofluentdesign.com.
75. Computer Science Curriculum 2008. ACM and IEEE Computer Society, 2008.
76. Computing Curricula 2001. URL: http://www.acm.org/education/curricvols/cc2001 .pdf/view.
77. DACI Research Group. URL: http://www.tkt.cs.tut.fi/research/daci/.
78. Dave Soldan., et al. CE 2004: Curriculum guidelines for undergraduate degree programs in software engineering, a volume of the Computing Curricula Series copyright ACM and IEEE. IEEE Computer Society. 2006.
79. David Soldan., et al. CE 2004: Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering. // A Report in the Computing Curricula Series. IEEE Computer Society Association for Computing Machinery. December 12, 2004. 162 p.
80. Densmore D., Passerone R., Sangiovanni-Vincentelli A. A Platform-Based Taxonomy for ESL Design. IEEE Design and Test of Computers, September 2006.
81. Dictionary of Computing. New York. Oxford University Press. 1983. 393 p.
82. Dijkstra Ed.W. The end of computing science? // URL: http://userweb.cs.utexas.edu/users/EWD/ewdl3xx/EWD1304.PDF.
83. Distributed Component Object Model (DCOM) URL: http://www.microsoft.com/com/default.mspx.
84. Edwards S. A. The Specification and Execution of Heterogeneous Synchronous Reactive Systems. // PhD thesis. University of California. Berkeley. 1997.
85. Edwards S., Lavagno L., Lee E.A., Sangiovanni-Vincentelli A. Design of embedded systems: Formal models, validation, and synthesis. // Proceedings of the IEEE. March 1997.
86. Elaine Cheong. Design and Implementation of TinyGALS: A Programming Model for Event-Driven Embedded Systems. // Memorandum No. UCB/ERL M03/14 Electronics Research Laboratory, College of Engineering, University of California. Berkeley. May 23, 2003.
87. Ellervee P., Kumarl S., Jantsch A., Svantesson B., Meincke T., Hemani A. 1RS YD: An Internal Representation for Heterogeneous Embedded Systems // NORCMP'98 The 16th NORCHIP Conference. Lund, Sweden. November 910, 1998. P. 214-221.
88. Ferrari A., Sangiovanni-Vincentelli A. System Design: Traditional Concepts and New Paradigms. // Proceedings of the 1999» Int. Conf. On Comp. Des. Austin. October 1999.
89. Flexible Design Methodologies for Application Specific Processors. URL: http://tce.cs.tut.fi/.
90. Gajski D. Silicon Compilers. Addison-Vesley. 1987.
91. Gerard*' Berry. The Foundations of Esterel. // Proof, Language, and Interaction: Essays in Honour of Robin Milner. Editors: Gordon Plotkin, Colin Stirling, Mads Tofte. MIT Press. 2000.
92. Gérard Berry. The Foundations of Esterel. Ecole des Mines de Paris. INRIA. 1999.
93. Halbwachs N., Caspi P., Raymond P., Pilaud D. The synchronous.data flow programming language Lustre. // Proceedings of the IEEE. September 1991.
94. Hardware-Software Codesign. // IEEE Design & Test of Computers, January-March 2000. P. 92-99.
95. Hatley D.J., Pirbhai I.A. Strategies for Real-Time System Specification. Dorset House. 1988.
96. IEEE Standard VHDL Language Reference Manual. Institute of Electrical and Electronic Engineers, Inc. December 29, 2000.
97. Information Processing Systems. OSI Reference Model. The Basic Model. 1994.
98. Information Technology. Open Systems Interconection. Basic Reference Model: Naming and Adressing. 1994.
99. Information Technology. Portable Operating System Interface (POSIX).2003.
100. ITEA Technology Roadmap for Software-Intensive Systems. 2 edition. May2004.
101. J. E. Smith, R. Nair. Virtual Machines — Versatile Platforms for Systems and Processes. // Elsevier Inc. 2005. 649 p.
102. Jackson E. K., Sztipanovits J. Using Separation of Concerns for Embedded Systems Design. EMSOFT'05. New Jersey. September 19-22, 2005.
103. Jerraya A.A., Romdhani M., Marrec PH.LE, Hessel F., Coste P., Valderrama C., Marchioro G.F., Daveau J.M., Zergainoh N.-E. Multilanguage specification for system design and codesign. URL: http://tima-cmp.imag.fr/Homepages/cosmos/documents/asi.ps.
104. Jie Liu. Responsible Frameworks for Heterogeneous Modeling and Design of Embedded Systems. // PhD thesis university of California at Berkeley. 2001.
105. Jozwiak L., Nejah N., Figueroa M. Modern development methods and tools for embedded reconfigurable systems: A survey. // INTEGRATION, the VLSI journal, 07.2009, P. 1-33.
106. Keutzer K., Malik S., NewtomR., Rabaey J., Sangiovanni-Vincentelli A. System Level Design: Orthogonalization of Concerns and Platform-Based Design. // IEEE Transactions on Computer-Aided Design of Circuits and Systems. Vol. 19, No. 12. December 2000.
107. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Videira Lopes, C., Loingtier, J.-M., and Irwin, J. Aspect-oriented programming. // Proceedings of the European Conference on Object-Oriented Programming (ECOOP), vol.1241, 1997, p.220-242.
108. Knudsen P.V. PACE: A Dynamic Programming Algoritm for Hardware/Software Partitionning. // Department of Computer science Technical University of Denmark. 1996.
109. Knudsen P.V., Madsen J. Integrating communication protocol selection with hardware/software codesign. // IEEE Transactions on Computer-Aided Design of Integrated Circuits. August 1999.
110. Kopetz H. REAL-TIME SYSTEMS. Design Principles for Distributed Embedded Applications. Kluwer Academic Publishers. 1997.
111. Kruchten P. Architectural Blueprints The "4+1" View Model of Software Architecture. 1995
112. Lavagno L., Sangiovanni-Vincentelli A., Sentovich E. Models of Computation for Embedded System Design. // NATO ASI Proceedings on System Synthesis. II Ciocco, Italy. August 1998.
113. Lee E. A. What's ahead for embedded software? // IEEE Computer. September 2000.
114. Lee E. Cyber Physical Systems: Design Challenges. // University of California, Berkeley Technical Report No. UCB/EECS-2008-8. 2008.
115. Lee E.A. Concurrent Models of Computation for Embedded Software. // UCB ERL Technical Memorandum M05/2. Department of Electrical Engineering and Computer Sciences, University of California. Berkeley, January 4, 2005.
116. Lee E.A. Embedded Software An Agenda for Research. // Technical Memorandum UCB/ERL M99/63, University of California. Berkeley. December 15, 1999.
117. Lee E.A. Embedded Software. // Technical Memorandum UCB/ERL M01/26, University of California. Berkeley. November 1, 2001.
118. Lee E.A. Model-Driven Development From Object-Oriented Design to Actor-Oriented Design. // Extended abstract of an invited presentation at Workshop on Software Engineering for Embedded Systems: From
119. Requirements to Implementation (a.k.a. The Monterey Workshop). Chicago. Sept. 24, 2003.
120. Lee E.A. Modeling Concurrent Real-Time Processes Using Discrete Events. // Annals of Software Engineering. Special Volume on Real-Time Software Engineering. 1998.
121. Lee E.A., Neuendorffer S., Wirthlin M.J. Actor-Oriented Design of Embedded Hardware and Software Systems // Journal of Circuits, Systems, and Computers, Version 2. November 20, 2002.
122. Lee E.A., Parks T.M. Dataflow process networks. // Proceedings of the IEEE, May 1995. URL: http://ptolemy.eecs.berkeley.edu/papers/processNets.
123. Lee E.A., Sangiovanni-Vincentelli A. A denotational framework for comparing models of computation. IEEE Transactions on CAD, December 1998.
124. Lee E.A., Sangiovanni-Vincentelli A. Comparing Models of Computation. Proceedings of ICCAD. San Jose, California, USA. November 10-14, 1996.
125. Maciel P., Barros E., Rosenstiel W. A Petri Net Model for Hardware/Software Codesign. // In Design Automation for Embedded Systems. Vol. 4. October 1999. P. 243-310.
126. Martin G. Productivity in VC Reuse: Linking SOC platforms to abstract systems design methodology. // Forum on Design Languages: Virtual Components Design and Reuse. Lyon, France. August-September, 1999. P. 313-322.
127. Martin G., Chang H., et al. Surviving the SOC Revolution: A Guide to Platform Based Design. Kluwer Academic Publishers. September 1999.
128. Martin G., Sangiovanni-Vincentelli A. A Vision for Embedded Software // Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems, 2001. P. 1-7.
129. Master Program "System-on-Chip" Design. URL: http://www.ele.kth.se/SoC.
130. Mentor Graphics Corporation. URL: http://www.mentor.com.
131. Mescal. URL: http://embedded.eecs.berkeley.edu/mescal/.
132. Object Management Group. OMG Unified Modeling Language Specification. June 1999. URL: http://www.omg.org.
133. Ovaska E., Balogh A., Campos S., Noguero A., Pataricza A., Tiensyrja K., Vicedo J. Model and Quality driven Embedded Systems Engineering. VTT Publications 705. 2009.
134. Patterson D.A., Hennessy J.L. Computer Organization and Design: The Hardware/software Interface. // Morgan Kaufmann. 2005.
135. Peterson J. L. Petri Net Theory and the Modeling of Systems. // Prentice-Hall Inc., Englewood Cliffs, NJ. 1981.
136. Petru Eles. System Design and Methodology: Modeling and Design of Embedded Systems. Institutionen for Datavetenskap (IDA). Linkopings Universitet. 2004.
137. Programmable Controllers Part 3: Programming Languages. IEC 61131-3, Ed. 2.0. 2003
138. Ptolemy II. URL: http://ptolemy.berkeley.edu/ptolemyII.
139. Rich Le Blanc, Ann Sobel, et al. Software Engineering 2004: Curriculum guidelines for undergraduate degree programs in computer engineering, a volume of the Computing Curricula Series, copyright ACM and IEEE. IEEE Computer Society. 2006.
140. RUP. URL: http://www-01.ibm.com/software/awdtools/rup/.
141. Russ Shackelford, et al. Computing Curricula 2005: The Overview Report, a volume of the Computing Curricula series produced by the Joint Task Force for Computing Curricula 2005, copyright ACM and IEEE. Association for Computing Machinery. 2006.
142. SAE AADL: A Society of Automotive Engineers Standard. URL: http://www.aadl.info.
143. Safonov V.O. Aspect.NET: concepts and architecture. // .NET Developers Journal. No. 10. 2004.
144. Sangiovanni-Vincentelli A. Defining platform-based design. // EEDesign. February 2002.
145. Sangiovanni-Vincentelli A. Quo Vadis SLD: Reasoning about Trends and Challenges of System-Level Design // Proceedings of the IEEE, March 2007. 95(3). P. 467-506.
146. Sangiovanni-Vincentelli A., Lee E.A. A framework for comparing models of computation. // IEEE Trans. Computer-Aided Design Integrated Circuits. December 1998.
147. Semiconductor Reuse Standard V2.0. Motorola Inc. 1999.
148. Sgroi M., Lavagno L., Sangiovanni-Vincentelli A. Formal Models for Embedded System Design. // IEEE Design & Test of Computers. April-June 2000. P. 2-15.
149. Shaw M. We can teach software better. // Computing Research News 4(4):2-12. September 1992.
150. Software Engineering 2004, Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering. IEEE Computer Society Press, ACM Press. August 23, 2004.
151. Technology Roadmap on Software-Intensive Systems: The Vision of ITEA (SOFTEC Project) // ITEA Office, Eindhoven, March 2001. Chapter 7, "Engineering". P. 47-56.
152. Terekhov A.N. The main concepts of a new HLL computer "САМСОН" // Computer Science Journal of Moldova. 1993. Vol.1. № 1(1). P. 22-27.
153. Thomas M. Parks. Bounded Scheduling of Kahn Process Networks. // Technical Report UCB/ERL-95-105. PhD Dissertation. EECS Department, University of California. Berkeley. December 1995.
154. Tiwari V., Malik S., Wolfe A. Power analysis of embedded software: a first step towards software power minimization. // IEEE Transactions on VLSI Systems. December 1994.
155. Wirth N. Hardware Compilation: Translating Programs into Circuits. // IEEE Computer. No. 31(6). 1998. P. 25-31.
156. Wolf W. Computers as Components: Principles of Embedded Computing Systems Design. Morgan Kaufman Publisher. 2001.
157. Wolf W. Object-oriented cosynthesis of distributed embedded systems. // ACM Transactions on Design Automation of Electronic Systems. July 1996.
158. Xiaojun Liu, Edward A. Lee. CPO semantics of timed interactive actor networks. // Technical Report UCB/EECS-2007-131. EECS Department, University of California. Berkeley. November 2007.
159. Xiaojun Liu. Semantic Foundation of the Tagged Signal Model. // Technical Report UCB/EECS-2005-31. Electrical Engineering and Computer Sciences. University of California at Berkeley. 2005.
160. Yang Zhao. A Model of Computation with Push and Pull Processing. // Technical Memorandum UCB/ERL M03/51. Electronics Research Laboratory. University of California at Berkeley. December 16, 2003.
-
Похожие работы
- Автоматизация проектирования встраиваемых систем
- Автоматизация построения инструментария кросс-разработки программного обеспечения для расширяемых встраиваемых систем
- Анализ, моделирование и верификация высокоуровневых протоколов эффективного информационного взаимодействия открытых телекоммуникационных систем
- Разработка методов синтеза программно-аппаратных комплексов с использованием высокоуровневых языков описания
- Методы принятия решений и управления в неструктурированных задачах на основе самоорганизующихся мультиагентных рекурсивных когнитивных архитектур
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность