Первоисточник: Баркалов А.А., Зеленёва И.Я., Ковалёв С.А., Гриценко А.А. "Модельно-ориентированный подход к разработке САПР управляющих автоматов" (конференция Таганрог-2006, май)

 

УДК 681.324

Баркалов А.А., Зеленёва И.Я., Ковалёв С.А., Гриценко А.А.

Модельно-ориентированный подход к разработке САПР  управляющих автоматов

 

          Введение

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

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

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

 

         1. Постановка задачи

Наиболее актуальными проблемами современного проектирования цифровых систем, и управляющих автоматов в частности, являются  [1, 4]

  - повышение уровня абстракции модели;

  - отделение предметной области от области реализации;

  - документирование принятых решений.

Повышение уровня абстракции ведет к построению более универсальных моделей. Такие модели позволяют решать более широкий круг задач, связанных с объектом моделирования, без изменения самой модели. Абстрактные модели легче расширять и адаптировать для решения круга частных задач, связанных с изменением набора свойств объекта моделирования.

Отделение предметной области от реализации дает возможность решать поставленные задачи в терминах той предметной области, которой данная задача принадлежит. Данный вопрос  ранее приобрел актуальность при объектно-ориентированном подходе, а для модельно-ориентированной системы такой подход должен быть основным.

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

Наиболее полным и универсальным стандартом проектирования для объектно-ориентированного подхода на данный момент является UML – унифицированный язык моделирования. Данный язык имеет ряд преимуществ [1-3]:

-                           графическая нотация  позволяет совместить графическое представление проекта и его автоматизированную обработку;

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

-                           использование большого набора диаграмм моделирования позволяет максимально эффективно осветить все компоненты модели (статическое моделирование) и полностью описать ее поведение (динамическое моделирование);

-                           поддержка синтаксически правильных и незавершенных моделей даёт возможность постоянного контроля за  текущим состоянием модели, а также для создания промежуточных моделей.

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

 

          2. Структура МО САПР УА

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

Структура МО САПР приведена на рис. 1.  Компоненты МО САПР:

-                           графический интерфейс пользователя  предоставляет доступ к различным средам САПР;

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

-                           среда оптимизации – дополнительная среда САПР, которая преобразует семантическую модель и/или параметры развертывания в соответствии с выбранным алгоритмом оптимизации или для выбранного аппаратного базиса (целевого типа ПЛИС);

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

 

 

Рисунок 1. - Структура МО САПР УА (согласно стандарту UML 2.0)

 

3. Семантическая модель и параметры развертывания

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

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

Параметры развертывания описывают связи между семантическими моделями компонент в соответствии с результатами моделирования взаимодействий. Параметры развертывания также включают данные, необходимые для имплементации модели автомата  (в частности, информацию об артефактах и манифестации [1]).

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

 

Рисунок 2. - Пример модели автомата МО САПР УА

 

Заключение

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

Использование модельно-ориентированной САПР экономически выгодно по следующим причинам:

-                     удешевление стоимости конструирования в процессе разработки с экономической точки зрения покупка модуля САПР для автоматизированного конструирования стоит дешевле, чем оплата работы соответствующих специалистов;

-                     ускорение разработки – автоматизация процесса конструирования позволяет максимально сократить время конструирования;

-                           повышение качества продукции – автоматизированное конструирование позволяет избежать большого количества низкоуровневых семантических ошибок;

-                           использование знаний персонала в предметной области – поддержка профилирования моделей дает возможность разрабатывать автоматы в терминах предметной области, что в свою очередь позволяет повысить эффективность инспекций проекта  экспертами в  данной предметной области.

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

 

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

1.                 Буч Г., Якобсон А., Рамбо Дж. UML. Классика CS. 2-е изд. / Пер. с англ.; Под общей редакцией проф. С. Орлова –  СПб.: Питер, 2006 –  736 с.: ил.

2.                 Макконелл С. Совершенный код. Мастер-класс / Пер. с англ. – М.: Издательско-торговый дом "Русская Редакция"; СПб.: Питер, 2005.– 896 с.: ил.

3.                 Fowler, Martin. 2004. UML Distilled, 3d ed. Boston, MA: Addison-Wesley

4.                 Баркалов О.О. Синтез пристроїв керування на програмованих логічних пристроях – Донецьк. РВА ДонНТУ, 2002. – 262 с.

5.                 Соловьев В.В. Проектирование цифровых систем на основе программируемых логических схем.–М.: Горячая линия-Телеком, 2001.– 636 с.