автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Методика актуализации вычислительного процесса информационно-управляющих систем

кандидата технических наук
Ковязин, Рустам Раисович
город
Санкт-Петербург
год
2011
специальность ВАК РФ
05.13.12
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Методика актуализации вычислительного процесса информационно-управляющих систем»

Автореферат диссертации по теме "Методика актуализации вычислительного процесса информационно-управляющих систем"

КОВЯЗИН РУСТАМ РАИСОВИЧ

4Вао£ои

МЕТОДИКА АКТУАЛИЗАЦИИ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА ИНФОРМАЦИОННО-УПРАВЛЯЮЩИХ СИСТЕМ

Специальность 05ЛЗ. 12 - Системы автоматизации проектирования (приборостроение)

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

-С ОПТ 2011

Санкт-Петербург 2011

4855260

Работа выполнена иа кафедре вычислительной техники Санкт-Петербургского государственного университета информационных технологий, механики и оптики

Научный руководитель:

доктор технических наук, доцент Платунов Алексей Евгеньевич

Официальные оппоненты:

доктор технических наук, профессор Коробейников Анатолий Григорьевич

кандидат технических наук, доцент Крылов Борис Алексеевич

Ведущая организация:

ФГУП ОКБ «Электроавтоматика» (г. Санкт-Петербург)

Зашита диссертации состоится 18 октября 2011 г. в 15 часов 50 минут на заседании диссертационного совета Д212.227.05 в Санкт-Петербургском государственном университете информационных технологий, механики и оптики по адресу: 197101, Санкт-Петербург, Кронверкский пр., д. 49.

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

Автореферат разослан 16 сентября 2011 г.

Ученый секретарь диссертационного совета Д212.227.05: кандидат технических наук, доцент

Поляков Владимир Иванович

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ Актуальность темы. Информационно-управляющие системы (ИУС) являются важнейшим элементом любой современной системы автоматики. Область их применения распространяется на медицинскую и бытовую технику, телекоммуникации, транспортные и аэрокосмические системы и др. На текущий момент наиболее распространенный и интенсивно развивающийся вид ИУС — системы с программным управлением.

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

В традиционной методике проектирования на рашгах этапах выполняется выбор способа реализации функций системы между программной ч аппаратной реализацией (Software/Hardware, SW/HW). Зачастую этот выбор считается известным a priori. Также весьма распространенным является выбор между прикладной и системной реализацией функций ИУС (Application/System, A/S). Процесс разработки ИУС неразрывно связан с выполнением инструментальных задач, решением которых занимается инструментальный компонент (ИК), выделяемый в составе ИУС. Вопрос его организации заключается в разделении реализации между подготовительной и исполнительской фазами (Design-Time/Run-Time, DT/RT). Современные ИУС являются вычислительными системами с доминирующей программной реализацией функций (Software Dominated Embedded Systems). Значительное увеличение объема функций ИУС с программной реализацией снизило эффективность применения традиционной методики проектирования: качество разрабатываемых систем упало, процесс проектирования стал менее предсказуемым. Многими учеными по всему миру (Е. A. Lee, A. Sangiovanni-Vincentelli, L. Lavagno, A. A. Jerraya), е том числе и в России (А. Н. Терехов, Ю. П. Голубев, В. В. Топорков, А. Е. Платунов, Н. П. Постников, А. Н. Лукичев), а также техническими специалистами фирм-лидеров в области разработки САПР (Synopsys, Cadence, Mentor Graphics) ведутся исследования по выходу из сложившегося кризиса проектирования: предлагаются новые методики проектирования, способы формализации процесса проектирования, выполняется апробация новых идей в исследовательских и коммерческих САПР.

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

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

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

1) исследовано влияния ИК на проект ИУС;

2) создана модель актуализации вычислительного процесса на базе унифицированного представления ИК ИУС;

3) создана система автоматизированного проектирования (САПР) на основе унифицированного в части ИК представления вычислительного процесса ИУС;

4) проведена апробация модели актуализации вычислительного процесса в ряде проектов ИУС, выполнен анализ ее эффективности.

Методы исследовании. Для решения поставленных задач использовались положения линейной алгебры, теории множеств, формальной логики, теории графов и теории конечных автоматов.

Научная новизна.

1) установлено влияние ИК на организацию вычислительного процесса ИУС в зависимости от разделения функций между подготовительной и исполнительской фазами жизненного цикла ИУС;

2) предложена модель актуализации вычислительного процесса ИУС, унифицирующая представление ИК ИУС;

3) предложено применение понятия транслятора в качестве способа унификации рассмотрения ИУС на различных уровнях ее представления и на различных этапах ее жизненного цикла;

4) классифицированы способы актуализации целевой задачи на фазах актуализации и получены оценки требуемых ресурсов ИУС для реализации каждого из способов;

5) разработан метод гибкого распределения элементов вычислительного процесса между фазами актуализации как проекгирование связки «компилятор - виртуальная машина»;

6) получены критерии эффективности реализации вычислительного процесса ИУС. Практическая ценность.

1) разработаны элементы САПР для построения и анализа графов актуализации вычислительного процесса существующих проектов ИУС;

2) на основе модели актуализации вычислительного процесса ИУС предложены методы синтеза проектируемых ИУС и анализа существующих ИУС;

3) даны экспертные оценки критических значений критериев для формирования рекомендаций по модернизации / исправлению реализации ИУС.

Внедрение результатов работы. Модель актуализации и разработанные элементы САПР были использованы для анализа разработок ООО «JIMT», в числе которых самыми крупными являются системы на базе семейства виртуальных машин SVM и программно-аппаратный комплекс сканирующего зондового микроскопа MiniLab. Основы предлагаемой методики проектирования и концепция модели актуализации использованы в учебных курсах кафедры вычислительной техники СПбГУ ИТМО. Внедрения подтверждены соответствующими актами.

Апробация работы. По материалам работы было сделано 12 докладов на 10 конференциях, в том числе профессорско-преподавательских конференциях СПбГУ ИТМО, конференциях молодых ученых СПбГУ ИТМО, политехнических симпозиумах «Молодые ученые — промышленности Северо-Западного региона» СПбГПУ.

Публикации. Основное содержание диссертационной работы полностью отражено в 16 научных и научно-технических работах автора, из которых 6 опубликовано в изданиях, рекомендуемых ВАК, и 9 работ опубликовано без соавторов.

Структура и объем работы. Диссертация состоит из введения, четырех глав и заключения. Список использованной лтературы составляет 70 наименований. Текст диссертации содержит 185 страниц машинописного текста, 55 рисунков, 21 таблицу и 2 приложения.

СОДЕРЖАНИЕ РАБОТЫ Во введении показана актуальность темы диссертации, определена цель и задачи работы, перечислены научные и практические положения, выносимые на защиту.

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

ность самого процесса проектирования. Традиционная методика проектирования ИУС имеет следующие недостатки:

• ранний выбор способа реализации функций ИУС (SW/HW) приводит к неогггимальным решениям;

• отсутствие единого программно-аппаратного представления затрудняет верификацию системы и делает невозможным быструю смену способа реализации функций ИУС;

• отсутствие четко построенного процесса проектирования непосредственно влияет на время выхода ИУС на рынок, усложняет специфицирование и формирование технических решений для повторного использования.

Неудовлетворенность результатами традиционной методики проектирования активизировала исследования в области системного проектирования ИУС. Появилось направление в проектировании, называемое Hardware-Software CoDesign, которое вобрало в себя стремление к параллельному и независимому проектированию аппаратной и программной частей ИУС. Комплексный характер проектирования ИУС отражается в стремлении разработчиков интегрировать языковую базу проектирования, создавать иерархию симуляционных моделей системы для предварительной оценки (профилирования) вычислительной сложности и последующей отладки (процессы верификации и тестирования). HW/SW CoDesign рассматривается сегодня как один из перспективных подходов в проектировании ИУС. Эта технология является сравнительно молодой, она появилась в первой половине девяностых годов. В настоящее время существует несколько некоммерческих САПР (Polis, Ptolemy, Chinook и др.), разрабатываемых в ряде университетов мира.

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

Один из подходов в рамках направления HW/SW CoDesign базируется на аспекхной модели процесса проектирования ИУС. Аспектное проектирование рассматривает единое пространство проектирования ИУС в терминах абстракций (вычислительных механизмов, функциональных преобразователей, виртуальных машин и др.). Аспектом проектирования ИУС называется характеристика системы, присутствующая на всех этапах ее жизненного цикла, но не обязательно являющаяся ее целевой функцией. Выделяют следующие аспекты: функциональный, поведенческий, структурный, конструктивно-технологический, надежностный, энергетический, инструментальный, климатический, повторного использования, организационно-документный и др. Проектирование на базе аспекгпой модели процесса проектирования является сравнительно молодым направлением. На текущем этапе развитие данной методики заключается в исследовании влияния отдельных аспектов проектирования, выделении новых аспектов, установлении связи между аспектами и свойствами ИУС. Некоторые из аспектов можно назвать основными: поскольку они важны для абсолютного большинства ИУС, то часто становятся объектом исследований. Данная работа посвящена исследованию влияния инструментального аспекта на целевую систему.

В процессе проектирования ИУС приходится принимать решения о способе реализации функций системы. Выбор между программной и аппаратной реализацией (SW/HW) наиболее изучен и в традиционной методике проектирования он осуществляется на ранних этапах. Увеличение функциональности ИУС сделало распространенным выбор между прикладной и системной реализацией (A/S). Создание программно-аппаратных платформ, разработка ИУС с поддержкой прикладного программирования сделало возможным выбор сложности и функциональности прикладного уровня. Граница AJS может быть «размытой» (нетривиальные задачи решаемы, но неудобно, громоздко, ^документировано и т. п.) или «четкой» (недокументированные задачи принципиально нерешаемы).

ИК ИУС — это программно-аппаратный комплекс, решающий инструментальные задачи ИУС. Вопрос организации ИК заключается в распределении реализации функций ИУС между подготовительной и исполнительской фазами (DT/RT). Существует множество вариантов организации программного управления в ИУС., ИК каждого из них будет иметь свои уникальные особенности. Если в процесс проектирования ИУС входит проектирование устройств реализации программного управления и/или их ИК, то свойства ИК не будут заранее известными и могут варьироваться: могут предоставляться библиотеки функциональных элементов системного уровня (функции, мегафункции, компоненты, блоки и т. п.) для компиляции вместе с целевой программой или находящиеся непосредственно в ИУС, может быть проведена оптимизация исполняемого кода по различным критериям, могут быть предоставлены различные инструментальные интерфейсы, в том числе и беспроводные, предоставляющие функции удаленного конфигурирования и программирования. В первой главе приведен анализ ИК в широко распространенных классах ИУС: уровень функций ИК в различных классах ИУС варьируется в широких пределах.

Процесс проектирования ИУС можно представить как поиск реализации системы в плоскости с осями SW/HW и A/S (см. рис. 1). По каждой из осей откладывается соотношение реализаций функций ИУС: между программной и аппаратной, между системной и прикладной. Каждая спроектированная ИУС является точкой на такой плоскости, поскольку в ней уже проведено разделение реализации. На процесс проектирования можно смотреть как на поиск точки на плоскости. Поиск ведется не на всей плоскости, а в определенной области. Эта область формируется на основе ограничений, накладываемых на реализацию функции ИУС заказчиком, доступными технологиями, электронными компонентами и квалификацией разработчиков. Добавление оси разделения DT/RT увеличивает размерность задачи поиска реализации системы и позволяет учигывать реализацию ИК в процессе проектирования ИУС. Традиционно выбор DT/RT считается вторичным, однако опыт разработки ИУС показывает, что ИК пе просто является частью системы: существует взаимное влияние между ИУС и ее ИК. При изменении разделения DT/RT мы можем получить другую область доступных решений процесса проектирования ИУС.

Во второй главе даны основы модели актуализации вычислительного процесса (АВП) ИУС. Модель АВП ИУС формализует процесс актуализации — процесс преобразования информации в контексте ИК ИУС. В процессе преобразования информация приобретает различные формы. Начальной формой информации считается целевая программа, описывающая логику работы системы на неком формальном языке. Конечной формой информация счита-

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

В качестве формальной модели процесса АВП ИУС используется ориентированный граф. Вершинами графа являются трансляторы. Их задача заключается в преобразовании информации из одной формы представления в другую. Дуги графа •— это формы представления целевого алгоритма. Таким образом, последовательность трансляторов, соединенных дугами, задает последовательность преобразований целевой программы. Процесс АВП ИУС формализован: все его трансляторы работают в автоматическом режиме.

Базовой единицей ипформации в модели АЕП ИУС является команда. Команды передаются между трансляторами последовательно, т. о. формируется поток команд. Каждый транслятор обладает входными и выходными потоками (дугами). По входным потокам транслятор получает команды, обрабатывает их и может генерировать реакции— команды в выходных потоках. В графе АВП ИУС трансляторы являются сущностями, преобразующими потоки команд. Если 2 транслятора соединить потоком, то реакция одного из них будет командой для другого, Транслятор, получающий команды от другого транслятора, называется его ресурсом. Перечень допустимых команд во входном потоке формирует его алфавит, а правила, определяющие последовательность допустимых команд, являются языком потока. У разных входных потоков одного транслятора могут быть разные алфавиты и языки.

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

Преобразовать Поменять скорость электрический сигнал

I

Передать байт

* Передаваемый бит * Передаваемый сигнал

ч>---------ю

Приемопередатчик Преобразователь

U ART интерфейса RS232

Рисунок 2. Граф АВП приемопередатчика UART

Транслятор определяет типы своих входных потоков. Типы выходных потоков транслятора определяются теми трансляторами, для которых эти потоки являются входными.

Подграфом АВП ИУС называется связный фрагмент графа АВП ИУС. Для подграфов АВП ИУС определены операции композиции и декомпозиции: операция композиции подграфа АВП — это обозначение подграфа АВП как нового транслятора. Операция декомпозиции подграфа АВП — это порождение подграфа АВП по транслятору. Операции композиции и декомпозиции возможны, поскольку и транслятор, и подграф АВГ1 функционально совпадают: у обоих есть входные и выходные потоки и оба выполняют преобразование форм представления информации.

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

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

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

Графы АВП ИУС могут применяться для анализа ВП в процессе проектирования ИУС и для оценки функциональности уже спроектированных ИУС. Процесс проектирования ИУС включает в себя организацию ВП ИУС. Модель АВП является не единственным средством проектирования, а дополнительным инструментом, помогающим разработчику определиться с организацией ВП ИУС. При проектировании граф АВП строится «сверху-вниз» через операцию декомпозиции (см. рис. 3). Начальные и конечные этапы процесса проектирования выделены жирными рамками. Этапы, выполняемые неформально (разработчиками ИУС), изображены прямоугольниками со скругленными углами.

Рисунок 3. Проектирование ИУС по графу ABII

Задача выполнения анализа ВП и реализации функциональности ИУС может возникнуть не только как часть процесса проектирования ИУС, но и применительно к существующим, уже разработанным ИУС. При анализе реализации ИУС граф АВП строится «снизу-вверх» с использованием операции композиции (см. рис. 4). На рисунке 4 использованы тс же обозначения, что и на рисунке 3.

Выделение трансляторов

Выбор начального уровня рассмотрения вычислительного ^ процесса ИУС

Установление зависимостей мвэду трансляторами

Формализация потоков монаду трансляторами

Создание графа АВП ИУС

Г Формирование I рекомендаций для I рефакторинга

Получение характеристик согласно критериям

( Композиция графа

АВП ИУС у

Оценка спорости фафа АВП ИУС

Формирование технических решений для повторного использования

Рисунок 4. Построение н анализ графа АВП для существующей ИУС'

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

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

В графе АВП трансляторы различных фаз АВП рисуются овалами разного цвета: трансляторы подготовительной фазы рисуются желтым цветом, а исполнительской фазы — зеленым. На рисунке 5 показан верхний уровень представления процесса АВП с учетом фаз актуализации. В ИУС с доминирующей программной составляющей аппаратная составляющая системы сама по себе не выполняет целевой функции. Программная составляющая настраивает ее (аппаратную) на выполнение целевой функции, т. е. конфигурирует ее. Другая целевая программа сконфигурировала бы ее под себя.

Входные Питание сигналы

Целевая программа

Реакции

ИУС

Инструментальная цепочка

Рисунок 5. Граф АВП ИУС с учетом фаз актуализации

Разделение процесса АВП на фазы позволяет дать новую трактовку широко распространенным в области разработки ИУС определениям:

• Транслятор подготовительной фазы, переводящий потоки в исполнительскую фазу, называется компилятором. Т. о. компилятор — это тот транслятор, чьи выходные потоки могут быть интерпретированы ИУС.

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

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

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

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

• актуализация целевой задачи на исполнительской фазе через добавление новых драйверов;

• актуализация целевой задачи на исполнительской фазе через добавление новых БТ;

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

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

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

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

Реакциик ресурсам

Операционная система Рисунок 6. Операционная система на графе ЛВП

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

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

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

Реакции к ресурсам

Д2 ДЗ

Рисунок 7. Виртуальная машина на графе АВП

Начать исполнение

£

Т2

Реакции

возобновить исполнение с учетом результата

Рисунок 8. Двустороннее взаимодействие трансляторов

Двустороннее взаимодействие чрезвычайно распространено среди трансляторов, реализованных программным способом. Между программными трансляторами можно построить двустороннее взаимодействие такой сложности, что верифицировать его будет чрезвычайно тяжело. Двустороннее взаимодействие встречается менаду аппаратно реализованными трансляторами: сигнал готовности шинного интерфейса (RDY), сигналы готовности к передаче и приему данных в интерфейсе RS232 (RTS и RTR), возможность «растягивания» (stretching) тактирующего сигнала в интерфейсе гС. Функциональность взаимодействия аппаратно реализованных трансляторов гораздо ниже, поэтому применение нашли в основном простые способы взаимодействий, но, тем не менее, они существуют.

Актуализация на подготовительной фазе заключается в получении форм, исполняемых БТ ИУС. Основные изменения подготовительной фазы связаны с разработкой нового компилятора. Эта задача может быть продиктована двумя обстоятельствами:

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

• требуется компилятор с новыми свойствами. В состав разрабатываемой ИУС входит ВМ или существующий компилятор не обладает требуемыми свойствами: высокой надежностью генерируемого кода, эффективной организацией ИК, низкой стоимостью и др.

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

Процесс АВП начинается в подготовительной фазе и завершается в исполнительской. Разделение реализации функций ИУС между фазами DT/RT сводится к выбору границы деления между фазами актуализации. Очевидно, что невозможно избавиться ни от одной из фаз актуализации. Однако если ряд функций можно будет реализовать как на одной, так и на другой фазе актуализации, то это должно влиять на определенные свойства проектируемых

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

ИУС.

Проекция проекта ИУС на плоскость ОТ/ЯТ Рисунок 9. Характер распределения ВП по фагам ашуализацнн

Разработка БТ возможна на обеих фазах акгуачизацин, поскольку компилятор тоже является БТ. В таблице 1 перечислены типовые варианты разработок. Наибольший контроль над ВП ИУС дает разработка БТ на обеих фазах.

Таблица 1. Разработка базовых трансляторов на фазах актуализации

Разработка компилятора Разработка ВМ Описание

Нет Нет Типовая разработка ИУС на базе микроконтроллеров, микропроцессоров и ПЛИС

Нет Да Разработка ВМ для существующих (стандартных) инструментальных средств

Да Пет Разработка компилятора нового языка или получение новых сеойств генерации кода

Да Да Разработка и компилятора, и ВМ для полного контроля над распределением ВП ИУС

В главе 4 выполняется апробация модели АБП на ряде ИУС, разработанных в ООО «ЛМТ» (см. табл. 2). Все приведенные примеры обладают схожими чертами:

• в состав ИУС входят различные виртуальные машины;

• доя прикладных программ используются различные компиляторы;

• практически все виртуальные машины внедрены в проектах ООО «ЛМТ».

Таблица 1. Примеры ИУС

Компилятор Виртуальная машина Контроллер(внедрение)

ЫЬ2НЕХ N1,1 С8С-1.1 (ККК) СБС-ИЯМ, CSC-l.Ur (таймер)

N12 М8844 (МАК ЭКГ)

8ТЬ 8УМЗМ \1CN-3.1 (КТЖ-2)

ЭУМ4 МСЫ-3.1 (СУНО Луч-2.1)

5\'М5 МСК-ЗЛ (МАК ЭКГ, ТФК)

N1,3 N13 МЬРС(Мт&аЬ)

Зауас ОУМ

Модель АВП ИУС предлагает ряд критериев на основе численных характеристик графов АВП. Для вычисления значений критериев требуется провести операцию планаризации

и получить наиболее полный граф АВП ИУС. Для графа АВП требуется вычислить следующие характеристики:

• Nout (/') — количество выходных потоков /-го транслятора;

• Nin (i) — количество входных потоков /-го транслятора;

• A VGail = rncd(/VMli (/)) — медианная функция выходных потоков по всему графу АВГ1;

j

• A VGj„ = med(Ni(1 (/)) — медианная функция входных потоков по всему графу АВП;

i

• L(i) = true | false — признак доступа к i-му транслятору с разных уровней представления ВП ИУС.

На основе полученных характеристик предлагаются набор критериев:

• М = A VG0U, — связность ресурсов ВП ИУС;

• Т = max «и/О) J — максимальное относительное количество ресурсов;

' \AVGant)

. R = max| -^inQL AVGh;

- максимальная относительная частота программирования;

• £, = иДО — наличие трансляторов с доступом с различных уровней представления ВП ИУС.

Каждый критерий характеризует отдельное свойство графа АВП, имеет свою метрику, показанную в таблице 3.

Критерий Метрика

и Трудоемкость модернизации ИУС, извлечения из нее готовых решений.

Т Производительность системы.

R Несистемность использования трансляторов.

L Ошибки в декомпозиции целевой задачи.

На основе исследования ИУС, разработанных в ООО «ЛМТ», были получены экспертные оценки критических значений для критериев (см. табл. 4). Если проводить анализ во время проектирования, то превышение критических значений для каждого критерия на очередном шаге декомпозиции означает то, что ИУС приобрела нежелательные свойства и шаг проектирования нужно сделать по-другому. Если проводить анализ критериев по уже реализованной системе, то превышение критических значений говорит о недостатках в реализации ИУС и позволяет выработать рекомендации по их исправлению при последующем рефакто-ринге системы.

Таблица 4. Критические значения критериев эффективности реализации ИУС

Критическое значение Рекомендация

М> 3 Структурировать взаимодействие трансляторов через перегруппировку их функций.

Т> 4 Разбить транслятор на части или добавить промежуточных драйверов.

R>4 Наиболее тщательным образом оптимизировать работу транслятора.

¿=true Добавить драйвер или цепочку драйверов, упорядочивающий доступ к транслятору.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ В работе получены следующие основные результаты:

1. Показано значительное влияние инструментального аспекта проектирования ИУС на ее архитектуру, определяемое множеством вариантов распределения вычислительного процесса (ВГ1) ИУС в рамках подготовительной и исполнительской фаз ее жизненного цикла.

2. Создана модель актуализации вычислительного процесса (АВП) па базе унифицированного представления инструментального компонента (ИК) ИУС. Предложено понятие транслятора в качестве основного элемента такого унифицированного представления. Разработаны шаблоны организации ВП ИУС и исследована эффективность их применения.

3. На основе модели АВП предложена методика синтеза проектируемых и анализа разработанных ИУС. Получены критерии эффективности реализации ВП ИУС.

4. Разработаны элементы САПР для посгроения, визуализации, статистической обработки графов АВП и расчета значений критериев эффективности реализации функциональности ИУС

5. На основе исследования ряда ИУС получены критические значения критериев для формирования рекомендаций по модернизации / исправлению реализации ИУС. Д'м ИУС, на которых производились исследования, сформулированы рекомендации по совершенствованию архитектуры.

6. С использованием модели АВП разработан ряд инструментальных компонентов и инструментальных цепочек ИУС различной архитектуры и сложности, что обеспечило для этих ИУС высокие показатели и успешное серийное производство. Эффективность применения методики актуализации была показана в процессе разработки ряда заказных систем, выполненной ООО «ЛМТ». Основы предлагаемой методики проектирования и концепция модели актуатизации использованы в учебных курсах кафедры вычислительной техники СПбГУ ИТМО по нескольким направления бакалаврской и магистерской подготовки. Внедрения подтверждены соответствующими антами.

СПИСОК ПУБЛИКАЦИЙ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Ковязин, Р. Р. Разработка проблемно-ориентированных процессоров I Р. Р. Ковязин, Н. П. Постников // Науч.-техн. весгн. СПбГУ ИТМО, - СПб.: СПбГУ ИТМО, 2010. -Выи. 70.-С. 81-85.

2. Ковязин, Р. Р. Разработка информационно-управляющих систем как актуализация целевой задачи / Р. Р. Ковязин // Науч.-техн. весгн. СПбГУ ИТМО. - СПб.: СПбГУ ИТМО, 2007. - № 45. Информационные технологии. - С. 79-85.

3. Ковязин, Р. Р. Создание локальных регуляторов на базе виртуальной машины с динамическим набором инструкций / Р. Р. Ковязин, Н. П. Постников // Науч.-техн. вести. СПбГУ ИТМО. - СПб.: СПбГУ ИТМО, 2006. - Вып. 32. Информационные технологии: теория, методы, приложения. - С. 55-62.

4. Ковязин, Р. Р. Влияние аппаратной организации на технологию программирования во встроенных системах / Р. Р. Ковязин // Науч.-техн. вестн. СПбГУ ИТМО. - СПб.: СПбГУ ИТМО, 2005.- Вып. 19. Программирование, управление и информационные технологии.-С. 172-177.

5. Ковязин, Р. Р. Унификация генерации кода для виртуальных машин встроенных систем / Р. Р. Ковязин // Науч.-техн. вестн. СПбГУ ИТМО. - СПб. : СПбГУ ИТМО, 2004. -Вып. 14. Информационные, вычислительные и управляющие системы. -С. 175-179.

6. Ковязин, Р. Р. Использование аппаратных интерпретаторов для управления неоднородными компонентами микропроцессорной системы / Р, Р, Ковязин, А. Г. Чистяков // Науч.-техн. вестн. СПбГУ ИТМО. - СПб.: СПбГУ ИТМО, 2002. - Вып. 6. Информационные, вычислительные и управляющие системы. - С. 71-75.

7. Ковязин, Р. Р. Выбор технологии программирования встроенных систем / Р. Р. Ковязин // Компоненты и технологии. -2005. -№ 1. - С. 144-147.

8. Ковязин, Р. Р. Приборные контроллеры / Р. Р. Ковязин, А. Е. Платунов // Приборостроение и средства автоматизации. - 2005. - № 1. - С. 50-52.

9. Ковязин, Р. Р. Программирование микроконтроллерных систем / Р. Р. Ковязин, А. Е. Платунов //Электронные компоненты. -2003. -№4. - С. 65-70.

10. Ковязин, Р. Р. Компиляция для специализированного процессора NL3 как решение NP-полной задачи : тез. докл. / Р. Р. Ковязин // Межвузовская конференция молодых ученых СПбГУ ИТМО. Выпуск 5. - СПб.: СПбГУ ИТМО, 2010. - С. 14-15.

11. Ковязин, Р. Р. Разработка проблемно-ориентированиых процессоров: тез. докл. / Р. Р. Ковязин, Н.П. Постников // Межвузовская конференция молодых ученых СПбГУ ИТМО. Выпуск 5,-СПб.: СПбГУ ИТМО, 2010,-С. 16-17.

12. Ковязин, Р. Р. Модель DPU проблемно-ориентированного процессора NL3 : тез. докл. / Р. Р. Ковязин, Н.П. Постпиков // Межвузовская конференция молодых ученых СПбГУ ИТМО. Выпуск 5. - СПб.: СПбГУ ИТМО, 2010. - С. 18-19.

13. Ковязин, Р. Р. Введение в модель актуализации : тез. докл. / Р. Р. Ковязин // Политехнический симпозиум «Молодые ученые- промышленности Северо-Западного региона».-СПб.: СПбГПУ, 2009. - С. 21-23.

14. Козязин, Р. Р. Программируемые мпкроконтроллерные системы: тез. докл. / Р. Р. Ковязин // Политехнический симпозиум «Молодые ученые - промышленности Северо-Западного региона». -СПб.: СПбГПУ, 2003. - С. 10.

15. Ковязин, Р. Р. Проектирование проблсмшю-орпеитироеанпых языков для встроенных вычислительных систем : тез. докл. / Р. Р. Ковязин// Политехнический симпозиум «Молодые ученые - промышленности Северо-Западного региона». - СПб.: СПбГПУ, 2002. -С. 66.

16. Ковязин, Р. Р. Оптимизация исполняемого кода для виртуальной машины : тез. докл. / Р. Р. Ковязин// Политехнический симпозиум «Молодые ученые - промышленности Северо-Западного региона». - СПб.: СПбГПУ, 2001. - С. 24.

Тиражирование и брошюровка выполнены в учреждении «Университетские телекоммуникации» 197101, Санкт-Петербург, Саблинская ул., 14 Тел.(812)233 46 69. Объем 1,0 у.п.л. Тираж 100 экз.

Оглавление автор диссертации — кандидата технических наук Ковязин, Рустам Раисович

СПИСОК СОКРАЩЕНИЙ И ОБОЗНАЧЕНИЙ.

ВВЕДЕНИЕ.

1. ПРОБЛЕМЫ ПРОЕКТИРОВАНИЯ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ.

1.1. Традиционная методика проектирования.

1.2. Современные методики проектирования.

1.3. Разделения реализации ИУС.

1.3.1. Инструментальный компонент ИУС.

1.3.1.1. ИУС на базе микроконтроллеров и ПЛИС.

1.3.1.2. ИУС на базе программируемых логических контроллеров.

1.3.1.3. ИУС на базе промышленных ПК.

1.3.1.4. Анализ реализаций инструментальных компонентов ИУС.

1.4. Сценарии проектирования.

1.5. Выводы.

1.6. Цели и задачи работы.

2. МОДЕЛЬ АВП ИУС.

2.1. Введение.

2.2. Основы модели АВП ИУС.

2.2.1. Процесс АВП ИУС.

2.2.2. Трансляторы и формы представления целевой программы.

2.2.2.1. Взаимодействие трансляторов.

2.2.3. Уровни представления ВП РТУ С.

2.2.4. Применение графа АВП ИУС.

2.2.5. Фазы АВП ИУС.

2.2.6. Базовые трансляторы.

2.2.6.1. Классификации базовых трансляторов.

2.3. Выводы.

3. ШАБЛОНЫ МОДЕЛИ АВП ИУС.

3.1. Введение.

3.2. Актуализация целевой программы на исполнительской фазе.

3.2.1. Актуализация через добавление драйверов.

3.2.2. Актуализация через добавление базовых трансляторов.

3.2.3. Взаимодействие программно реализованных трансляторов.

3.2.3.1. Элементарное взаимодействие.

3.2.3.2. Прерывания.

3.2.3.3. Двустороннее взаимодействие.

3.3. Актуализация целевой программы на подготовительной фазе.

3.3.1. Языки программирования.

3.3.2. Компиляторы.

3.4. Распределение ВП по фазам актуализации.

3.5. Выводы.

4. ПРИМЕНЕНИЕ МОДЕЛИ АВП ИУС.

4.1. Введение.

4.2. NL1 +NL2HEX.

4.3. NL2 + NL2ASM.

4.4. Семейство ВМ SVM + STL.

4.5. Программно-аппаратный комплекс СЗМ MiniLab.

4.5.1. Спецвычислитель NL3.

4.5.1.1. Архитектура процессора NL3.

4.5.2. Компилятор NL3.

4.5.2.1. Язык составления схем цифровой обработки сигналов.

4.5.2.2. Математическая модель.

4.5.2.3. Анализ метода компиляции схем для процессора NL3.

4.5.2.4. Инструментальная цепочка схем обработки цифровых сигналов

4.5.2.5. Время компиляции схем.

4.6. Критерии эффективности реализации ВП ИУС.

4.7. САПР на базе модели АВП ИУС.

4.7.1. Создание графа АВП.

4.7.2. Обработка графа АВП.

4.8. Выводы.

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

Информационно-управляющие системы (ИУС) являются важнейшим элементом любой современной системы автоматики. Область их применения распространяется на медицинскую и бытовую технику, телекоммуникации, транспортные и аэрокосмические системы и др. На текущий момент наиболее распространенный и интенсивно»развивающийся вид ИУС — это системы с программным управлением. Одним из основополагающих принципов внутренней организации и способа применения современных ИУС является принцип* программируемое™ на многих уровнях и в различных стилях.

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

В традиционной методике проектирования на ранних этапах выполняется выбор способа реализации функций системы.между программной и аппаратной реализацией (Software/Hardware, SW/HW). Зачастую этот выбор считается известным a priori. Также весьма распространенным является выбор между прикладной и системной реализацией функций ИУС (Application/System, A/S). Процесс разработки ИУС неразрывно связан с выполнением инструментальных задач, решением которых занимается инструментальный компонент (ИК), выделяемый, в составе ИУС. Вопрос его организации заключается в разделении ■реализации—между—подготовительной—и—исполнительской—фазой—(Design-Time/Run-Time, DT/RT). Современные ИУС являются вычислительными системами с доминирующей программной реализацией функций (Software Dominated Embedded Systems). Значительное увеличение объема функций ИУС с программной реализацией снизило эффективность применения традиционной методики проектирования: качество разрабатываемых систем упало, процесс проектирования стал менее предсказуемым. Многими учеными по всему миру (Е. A. Lee, A. Sangiovanni-Vincentelli, L. Lavagno, A. A. Jerraya), в том числе и в России (А. Н. Терехов, Ю. П. Голубев, В. В. Топорков, А. Е. Платунов, Н. П. Постников, А. Н. Лукичев), а также техническими специалистами фирм-лидеров в области разработки САПР (Synopsys, Cadence, Mentor Graphics) ведутся исследования по выходу из сложившегося кризиса проектирования: предлагаются новые методики проектирования, способы формализации процесса проектирования, выполняется апробация новых идей в исследовательских и коммерческих САПР.

Опыт показывает, что присутствует взаимное влияние между ИУС и инструментальным компонентом. В зависимости от разделения между подготовительной и исполнительской фазой получаются разные области доступных реализаций ИУС. Так была сформулирована цель работы. Целью работы является развитие методов и средств проектирования ИУС на основе унифицированного представления вычислительного процесса ИУС на подготовительной и исполнительской фазе жизненного цикла системы.

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

1) исследовано влияние инструментального компонента на проект ИУС;

2) создана модель актуализации вычислительного процесса на базе унифицированного представления инструментального компонента ИУС;

3) создана1 система автоматизированного проектирования (САПР) на основе унифицированного в части инструментального компонента представления вычислительного процесса ИУС;

4) проведена апробация модели в ряде проектов ИУС, выполнен анализ ее эффективности.

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

В работе получены следующие научные результаты:

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

2. Предложена модель актуализации вычислительного процесса ИУС, унифицирующая представление инструментального компонента ИУС.

3. Предложено применение понятия * транслятора в качестве способа унификации рассмотрения ИУС на. различных уровнях ее представления, и, на различных этапах ее жизненного цикла.

4. Классифицированы способы актуализации целевой задачи на фазах актуализации и получены, оценки требуемых ресурсов ИУС для реализации каждого из способов.

5. Разработан метод гибкого распределения элементов вычислительного процесса между фазами актуализации! как проектирование связки- «компилятор - виртуальная машина».

6. Получены критерии эффективности реализации ВПИУС. В работе получены следующие практические результаты:

1. Разработаны элементы САПР для построения, и анализа графов актуализации, вычислительного процесса существующих проектов ИУС.

2. На основе модели актуализации вычислительного процесса ИУС предложены методы синтеза проектируемых ИУС и анализа существующих ИУС.

3. Даны экспертные оценки критических значений критериев для формирования рекомендаций по модернизации / исправлению реализации ИУС. Модель актуализации и разработанные элементы САПР были использованы для анализа разработок ООО «ЛМТ», в числе которых самыми крупными являются системы на, базе семейства виртуальных машин БУМ и программно-аппаратный комплекс сканирующего зондового микроскопа МЫЬаЬ. Основы предлагаемой методики проектирования и концепция модели актуализации использованы в учебных курсах кафедры вычислительной техники СПбГУ ИТМО. Внедренияподтверждены соответствующими актами.

По материалам работы было сделано 12 докладов на 10 конференциях. Основное содержание диссертационной работы полностью отражено в 16 научных и научно-технических работах автора, из которых 6 статей опубликовано в изданиях, рекомендуемых ВАК, и 9 работ опубликовано без соавторов.

Заключение диссертация на тему "Методика актуализации вычислительного процесса информационно-управляющих систем"

8. Выводы

1. Предложенная модель АВП ИУС может быть успешно применена для анализа и проектирования как всей системы в целом, так и отдельных ее частей.

2. Описание базовых проектов, на которых проходила апробация модели АВП, позволяет судить о применимости предлагаемой модели в широких пределах. Модель АВП позволяет детально описывать современные ИУС, поскольку они являются системами с доминирующим программным компонентом.

3. Модель АВП позволяет исследовать фрагменты ВП с разной степенью детализации.

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

5. Сформулированы рекомендации по организации ВП ИУС с целью улучшения его характеристик по переносимости, расширяемости, производительности и эффективности реализации.

ЗАКЛЮЧЕНИЕ

В работе получены следующие основные результаты:

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

2. Создана модель актуализации вычислительного процесса (АВП) на базе унифицированного^ представления инструментального компонента (ИК) ИУС. Предложено понятие транслятора в качестве основного элемента такого унифицированного представления. Разработаны шаблоны организации ВП ИУС и исследована эффективность их применения.

3. На основе модели АВП предложена методика синтеза проектируемых и анализа разработанных ИУС. Получены критерии эффективности реализации ВП ИУС.

4. Разработаны элементы САПР для построения, визуализации, статистической обработки графов АВП и расчета значений критериев эффективности реализации функциональности ИУС.

5. На основе исследования ряда ИУС получены критические значения критериев для формирования рекомендаций по модернизации / исправлению реализации ИУС. Для ИУС, на которых производились исследования, сформулированы рекомендации по совершенствованию архитектуры.

6. С использованием модели АВП разработан ряд инструментальных компонентов и инструментальных цепочек ИУС различной архитектуры и сложности, что обеспечило для этих ИУС высокие показатели и успешное сер ий но е~пр о изв одств'о.

Эффективность применения методики актуализации была показана в процессе разработки ряда заказных систем, выполненной ООО «ЛМТ». Основы предлагаемой методики проектирования и концепция модели актуализации использованы в учебных курсах «Интерфейсы периферийных устройств», «Программно-аппаратный базис ВВС» и «Методы и технологии проектирования систем на кристалле» кафедры вычислительной техники СПбГУ ИТМО по нескольким направления бакалаврской и магистерской подготовки. Внедрения подтверждены соответствующими актами.

По материалам работы было сделано 12 докладов на 10 конференциях, в том числе профессорско-преподавательских конференциях СПбГУ ИТМО, конференциях молодых ученых СПбГУ ИТМО, политехнических симпозиумах «Молодые ученые— промышленности Северо-Западного региона» СПбГПУ. Основное содержание диссертационной работы полностью отражено в 16 научных и научно-технических работах автора (61 п. л.), из которых 6 статей опубликовано в изданиях, рекомендуемых ВАК РФ (36 п. л.), и 9 работ опубликовано без соавторов.

Библиография Ковязин, Рустам Раисович, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Микропроцессорные системы : Учеб. пособие для вузов / Е. К. Александров, Р. И. Грушевицкий, М. С. Куприянов и др.; под общей ред. Д. В. Пузанкова. СПб. : Политехника, 2002. - 935 с.

2. Lee, Е. A. Embedded software / Е. A. Lee // Advances in Computers. 2002. — Vol. 56.-pp. 56-97.

3. Hatley, D. J. Strategies for Real-time System Specification / D. J. Hatley, I. A. Pirbhai. Dorset House Publishing Company, 1988. - 386 p.

4. Иордон, Э. П. Путь камикадзе. Как разработчику программного обеспечения выжить в безнадежном проекте / Э. П. Йордон. М. : ЛОРИ, 2001.-272 с.

5. Lee, Е. A. Absolutely Positively on Time: What Would It Take? / E. A. Lee // Computer. 2005. - Vol. 38, №7. - pp. 85-87.

6. Lee, E. A. What's Ahead for Embedded Software? / E. Lee // Computer. -2000. Vol. 33, №9. - pp. 18-26.

7. Lee, E. A. A Component-Based Approach to Modeling and Simulating Mixed-Signal and Hybrid Systems / E. A. Lee, J. Lui // ACM Transactions on Modeling and Computer Simulation. 2002, Oct - Vol. 12, №4. - pp. 343-368.

8. Graaf, B. Embedded Software Engineering: The State of the Practice / B. Graaf, V. Lormans, H. Toetenel // IEEE Software. 2003. - Vol. 20, №6. -pp. 61-69.

9. Sangiovanni-Vincentelli, A. System Design: Traditional Concepts and New Paradigms / A. Ferrari, A. Sangiovanni-Vincentelli // Proc. of the 1999 Int. Conf. On Сотр. Des. Oct. 1999. - pp. 2-12.

10. Ш.^опорков^В.-В.-Модели-и-методы-системногохинтеза^'ВгВг^опорковГ^

11. M.: Моск. энерг. ин-т, 1997.1.. Sangiovanni-Vincentelli, A. A Top-down Constraint-driven Design Methodology for Analog Integrated Circuits / H. Chang, E. Charbon, U. Choudhuiy, A.

12. Demir, E. Felt, E. Liu, E. Malavasi, A. Sangiovanni-Vincentelli, I. Vassiliou. -Springer, 1996.-384 p.

13. Jerraya, A. A. Long Term Trends for Embedded System Design / A. A. Jerraya // Proc. of the Digital System Design. 2004. - pp. 20-26.

14. Hardware-Software Codesign. // IEEE Design & Test of Computers. 2000, January-March 2000. pp. 92-99.

15. Sangiovanni-Vincentelli, A. Hardware-Software Codesign of Embedded Systems / M. Chiodo, P. Giusto, A. Jurecska, H. C. Hsieh, A. Sangiovanni-Vincentelli; L. Lavagno// IEEE Micro Chips, Systems; Software, and Applications. 1994, August, - pp. 26-36.

16. Agha, G.A. Actors: A Model of Concurrent Computation in Distributed Systems // The MIT Press Series in Artificial Intelligence. MIT Press. 1986.

17. Lee, E. A. Actor-Oriented Design^of Embedded Hardware and Software Systems / E. A. Lee, S. Neuendorffer, M. Wirthlin // Journal of Circuits, Systems and Computers. 2002, Nov. - pp. 231-260.

18. Lee, E. A. System-Level Types for Component-Based Design / E. A. Lee, Yu-hong Xiong // Proc. of the First International Workshop on Embedded Software. -2001. -pp. 237-253.

19. Lee, Е. A. Synchronous data flow / Е. A. Lee, D. Messerschmitt // IEEE Proc. 1987, Sept. - pp. 1235-1245.

20. Lee, E. A. Dataflow Process Networks / E. A. Lee, T. Parks // IEEE Proc.1995, May.-pp. 773-799.

21. Lee, E. A. Comparing models of computation / E. A. Lee, A. Sangiovanni-Vincentelli // International Conference on Computer-Aided Design Proc.1996.-pp. 234-241.

22. Lee, E. A. Timed Multitasking for Real-Time Embedded Software / Lee E. A., Jie Liu // IEEE Control Systems Magazine. Vol. 23,2002. - pp. 65-75.

23. De Marco, T. Structured Analysis and System Specification / T. De Marco. -Prentice-Hall, 1978. 352 p.

24. Голубев, Ю. П. Автоматизация проектирования преобразователей дискретной информации / Ю. П. Голубев. Калуга : Гриф, 2003. — 652 с.

25. Новиков, Г. И. Сквозное автоматизированное проектирование микропроцессорных систем /Т. И. Новиков, АТЕГПлатунов //'Изв^тия'вузбвтПри-боростроение. 2000. - Том 43, № 1-2. - С. 35-39.

26. Постников, Н. П. Поведенческий и инструментальный аспекты проектирования встроенных вычислительных систем: дис. канд. тех. наук / Н. П. Постников. 2004. - 152 с.

27. Лукичев, А. Н. Денотативно-объектная модель вычислений для встроенных систем : дис. канд. тех. наук / А. Н. Лукичев. 2008. - 170 с.

28. Платунов, А. Е. Теоретические и методологические основы высокоуров-• невого проектирования встраиваемых вычислительных систем : дис. док.тех. наук / А. Е. Шатунов. 2011.

29. Шатунов, А. Е. Единое проектное пространство плюс аспектная технология- перспективная парадигма проектирования встраиваемых систем / А. Е. Шатунов, Н. П. Постников // Науч.-тех. вестн. СПбГУ ИТМО. -СПб. : СПбГУ ИТМО, 2003.-Вып. 11.-С. 121-128.

30. Постников, Н. П. Динамические инструментальные компоненты / Н. П. Постников // Науч.-техн. вестн. СПб ГИТМО(ТУ). СПб. : СПб ГИТМО (ТУ), 2002,-№6.-С. 122.

31. Ахо, А. Компиляторы: принципы, технологии, инструменты / А. Ахо, Р. Сети, Д. Ульман. М. : Мир, 1985. - 868 с.

32. Зюбин, В.Е. Программирование ПЛК: МЭК 61131-3 и возможные альтернативы / В. Е. Зюбин // Промышленные АСУ и контроллеры. 2005. — №11.-С. 31-35.

33. Ковязин, Р. Р. Выбор технологии программирования встроенных систем / Р. Р. Ковязин // Компоненты и технологии. 2005. - № 1. - С. 144-147.

34. Knudsen, P. V. РАСЕ: A Dynamic Programming Algorithm for Hardware/Software Partitionning / P. V. Knudsen // Proc. of the 4th Int. Workshop on Hardware/Software Co-Design. 1996. - pp. 85-92.

35. Knudsen, P. V. Integrating communication protocol selection with hardware/software codesign / P. V. Knudsen, J. Madsen // IEEE Transactions on Computer-Aided Design of Integrated Circuits. №18 (8), Aug., 1999.-ppTT 077=1095:

36. Wirth, N. Hardware Compilation: Translating Programs into Circuits / N. Wirth // IEEE Computer. №31 (6), 1998. - pp. 25-31.

37. Буч, Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++ : изд. 2-е / Г. Буч. М. : Бином, СПб. : Невский диалект, 1998.-560 с.

38. Ковязин, Р. Р. Разработка информационно-управляющих систем как актуализация целевой задачи / Р. Р. Ковязин // Научно-технический вестник СПбГУ ИТМО. СПб.: СПбГУ ИТМО, 2007. - № 45. Информационные технологии. - С. 79-85.

39. Ковязин, Р. Р. Введение в модель актуализации : тез. докл. / Р. Р. Ковязин // Политехнический симпозиум «Молодые ученые промышленности- Северо-Западного региона». - СПб.: СПбГПУ, 2009. - С. 21-23.

40. Lee, Е. A. Software Synthesis from Dataflow Graphs / E. A. Lee, S. S. Bhat-tacharyya, P. K. Murthy. Kluwer Academic Publishers, 1996. - 192 p.

41. Брукс, Ф. Мифический человеко-месяц или как создаются программные системы / Ф. Брукс. СПб.: Символ-Плюс, 2000. - 304 с.

42. Непейвода, Н. Н'. Основания программирования / Н. Н. Непейвода, И. Н. Скопин. Москва-Ижевск: Институт компьютерных исследований, 2003.-868 с.

43. Клингман, Э. Проектирование микропроцессорных систем / Э. Клинг-ман. М.: Мир, 1985. - 363 с.

44. Flynn, М. Some Computer Organizations and Their Effectiveness / M. Flynn // IEEE Translations on Computers. 1972. - Vol. C-21. - pp. 948.51тВоеводин~ВгВ~Вычислительная математика и структуры алгоритмов / В. В. Воеводин. М. : Изд-во МГУ, 2006. - 112 с.

45. Воеводин, В. В. Параллельные вычисления : учеб. пособие для вузов / В. В. Воеводин, Вл. В. Воеводин. СПб. : БХВ-Петербург, 2002. - 600 с.

46. Lavagno, L. Models of Computation for Embedded System Design / L. Lavagno, A. Sangiovanni-Vincentelli, E. Sentovich // Proc. on System Synthesis. -1999. pp. 45-102.

47. Шалыто, A. A. Switch-технология. Алгоритмизация и программирование задач логического управления / А. А. Шалыто, СПб.: Наука, 1998. — 628 с.

48. Ковязин, Р. Р. Программирование- микроконтроллерных систем / Р. Р. Ковязин, А. Е. Платунов // Электронные компоненты. 2003. - №4. -С. 65-70.

49. Ertl, М. A. Implementation of Stack-Based Languages on Register Machines : Diss. Dr. Tech. Sci. / M. A. Ertl. Wien, 1996. - 85 p.

50. Smith, J. Virtual Machines: Versatile Platforms for Systems and Processes / J. Smith, R. Nair. Morgan Kaufinann, 2005. - 656 p.

51. Ковязин, P. P. Оптимизация исполняемого кода для виртуальной машины : тез. докл. / Р. Р. Ковязин // Политехнический симпозиум «Молодые ученые промышленности Северо-Западного региона». - СПб. : СПбГПУ, 2001.-С. 24.

52. Jerraya, A. A. Multi-language System Design // A. A. Jerraya, R. Ernst // Proc. of the Conference on Design, Automation and Test. 1999. - pp. 696.

53. Непейвода, H. H. Стили и методы программирования / Н. Н. Непейвода,-ИгНгСкопин—МГГИНТУИТГ200"5~="320"с:

54. Ковязин, Р. Р. Проектирование проблеммно-ориентированных языков для встроенных вычислительных систем : тез. докл. / Р. Р. Ковязин // Политехнический симпозиум «Молодые ученые- промышленности СевероЗападного региона». СПб.: СПбГПУ, 2002. - С. 66.

55. Ковязин, Р. Р. Разработка проблемно-ориентированных процессоров : тез. докл. / Р. Р. Ковязин, Н. П. Постников // Межвузовская конференция молодых ученых СПбГУ ИТМО. Выпуск 5. СПб. : СПбГУ ИТМО, 2010.-С. 16-17.

56. Ковязин, Р. Р. Разработка проблемно-ориентированных процессоров : тез. докл. / Р. Р. Ковязин, Н. П. Постников // Сборн. тез. докл. конф. молодых ученых. СПб.: СПбГУ ИТМО, 2010. - Вып. 5. - С. 81-85.

57. Fisher, J. Very Long Instruction Word Architectures and the ELI-512 / J. Fisher // Proc. of the 10й1 annual International Symposium on Computer Architecture. N.Y. : ACM. - p. 140-150.

58. Fisher, J. Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools / J. Fisher, P. Faraboschi, C. Young. Morgan Kaufmann, 2004. - 712 p.