Научная статья на тему 'Повышение эффективности разработки встраиваемых систем с использованием моделей устройств'

Повышение эффективности разработки встраиваемых систем с использованием моделей устройств Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
61
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕТОДЫ ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ СИСТЕМ / РАЗРАБОТКА / ОСНОВАННАЯ НА МОДЕЛЯХ / ИНТЕЛЛЕКТУАЛЬНЫЕ МОДЕЛИ УСТРОЙСТВ / СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / ДРАЙВЕРЫ / УПРАВЛЕНИЕ АППАРАТНЫМ ОБЕСПЕЧЕНИЕМ / БЫСТРАЯ РАЗРАБОТКА ПРИЛОЖЕНИЙ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Аминов Растям Ильдусович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Аминов Растям Ильдусович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Повышение эффективности разработки встраиваемых систем с использованием моделей устройств»

ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННЫЕ

СИСТЕМЫ И ТЕХНОЛОГИИ

УДК 004.384

ПОВЫШЕНИЕ ЭФФЕКТИВНОСТИ РАЗРАБОТКИ ВСТРАИВАЕМЫХ СИСТЕМ С ИСПОЛЬЗОВАНИЕМ МОДЕЛЕЙ УСТРОЙСТВ

Аминов Растям Ильдусович, аспирант, Астраханский государственный университет, 414056, Россия, Астрахань, Татищева, 20 a, e-mail: rushpiel@mail.ru.

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

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

ENHANCE THE EFFICIENCY OF THE EMBEDDED SYSTEMS DEVELOPMENT BASED ON DEVICE MODELS

Aminov Rastyam I., postgraduate, Astrakhan State University, Tatishcheva 20 a, Astrakhan, 414056, Russia, e-mail: rushpiel@mail.ru.

This article describes the specifics of the development of embedded systems, the shortcomings of the classical approach complete system design. For creating software for embedded systems need tools as an effective solution of applied task, and effective control of different hardware such as peripherals of the MCU and external devices. The complexity of devices increases continuously and proportionally increases the amount of code to control the devices. In the classical low-level control, logic control unit is implemented by the programmer, based on his knowledge of the low-level interface device (control registers), and modes of the devices they control. In the development of all the information about control registers the microprocessor and the values that need to be written for them to switch the device to the desired mode must be known to the programmer. Such an approach does not meet the requirements of design automation and rapid application development and not to allow to quickly creating the code to support a particular hardware configuration of embedded system and to begin solving applied task. Promising to investigation a new approach to software development of embedded systems, which will formalize and automate the initialization and configuration of devices, the creation of device drivers. This approach involves the creation of intellectual models of devices used in embedded systems, such as peripheral and system modules of microcontrollers and external devices. Given the current trends in software development model-components allow to realize the concept of "Rapid Application Development" for embedded systems. The implementation of device models allows us to encapsulate the device control logic and free developer from writing low level code to control device and also to implement an intelligent control of the boundary parameters compatible devices. The universality of the proposed approach is that the device model can be described as internal devices of the microcontroller, the individual chips in system board, as well as sophisticated devices consisting of multiple chips. Device models, allow creating through the design cycle by chip manufacturers to developers of ready systems, presenting them easy to use interface for device control.

Key words: designing embedded systems, model based development, intelligent devices models, system software, drivers, hardware control, rapid application development.

Специфика программного обеспечения встраиваемых систем

Встраиваемая система - специализированная компьютерная система управления, встроенная непосредственно в устройство или объект, которым она управляет [1]. Типичными примерами встраиваемых систем являются электронные блоки управления бытовой электроникой, авионика, автомобильная электроника, банкоматы и т.д.

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

Для различных задач требуется как набор периферийных устройств (датчики, приводы, модули, обеспечивающие интерфейс с пользователем (дисплеи, кнопки), интерфейсы

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

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

Основой для построения вычислительных модулей встраиваемых систем являются однокристальные микро-ЭВМ (микроконтроллеры и системы на кристалле) и программируемые логические интегральные схемы (ПЛИС).

Использование однокристальных решений объясняется наличием на одном чипе, помимо процессорного модуля, системных и периферийных устройств: оперативной и flash-памяти, контроллеров интерфейсов, аналого-цифровых преобразователей, что позволяет минимизировать набор внешних аппаратных компонентов.

Различные семейства микроконтроллеров, систем на кристалле и ПЛИС имеют различный набор встроенных в чип периферийных устройств.

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

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

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

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

Таким образом, при создании программного обеспечения для встраиваемых систем необходимы средства как эффективного решения прикладной задачи, так и эффективного управления разнородным аппаратным обеспечением системы, как периферийными устройствами микроконтроллера, так и внешними устройствами, такими, как датчики, сенсорные панели, дисплеи и т.д. Учитывая современные тенденции в создании программного обеспечения, эти средства должны удовлетворять концепции «Быстрой разработки приложений» -Rapid Application development (RAD).

Недостатки низкоуровневого управления устройствами

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

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

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

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

Рассмотрим недостатки данного подхода.

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

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

3. Функции, управляющие аппаратурой, и аппаратные модули логически не связаны.

4. Управление устройствами не формализовано. Для внутренних устройств микроконтроллеров одного производителя и одного семейства отсутствуют механизмы, упрощающие управление аппаратурой.

Сформулируем сущностное описание классического низкоуровневого управления устройствами из приложения встраиваемой системы: «Чтобы устройство функционировало в нужном режиме К, необходимо записать значение X в регистр А, значение У - в регистр В, значение Ъ-ъ регистр С» для внутренних устройств микроконтроллера.

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

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

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

Исследование метамоделей устройств

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

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

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

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

Интеллектуальные метамоделн позволят формализовать управление устройствами и реализовать декларативное управление.

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

Данный подход позволит реализовать следующие возможности:

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

■ единый подход для эффективного управления внутренними устройствами микроконтроллера и внешними устройствами;

■ возможность развития подхода и применения для управления удаленными, виртуальными объектами;

■ стандартизация описания всех сущностей управляющих систем;

■ быстрая разработка программного обеспечения встраиваемых систем.

Методы реализации метамоделей устройств

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

На рисунке представлена обобщенная структура разработанной модели устройства встраиваемой системы.

^ Управляющая программа

Высокоуровневый программный интерфейс устройства

Контроль корректности соединения устройств, управления устройствами

Описание устройства

Характеристики Состояние

Настройки

Режимы работы

Управление

Запуск функций Обмен данными

Описание' аппаратам: интерфейсов устройства (контроль совместимости параметров устройств)

Инкапсулируемая Логика управления

Настройка - Запуск функций (управление) - Обмен данными Низкоуровневый интерфейс устройства (регистры, команды, буферы)

Реализация (само устройство)

Структурная модель (синтез) (не входит в исследование)

^Поведенческая модель (симуляция) (не входит в исследование)

Рис. Обобщенная структура модели устройства встраиваемой системы

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

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

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

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

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

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

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

1. Васильев А. Е. Микроконтроллеры. Разработка встраиваемых приложений / А. Е. Васильев. - СПб. : БХВ-Петербург, 2008. - 304 с.

2. Ключев А. О. Аппаратные и программные средства встраиваемых систем / А. О. Ключев, Д. Р. Ковязина, П. В. Кустарев, А. Е. Платунов. - СПб. : СПбГУ ИТМО, 2010. - 287 с.

References

1. Vasil'ev А. Е. Mikrokontrollery. Razrabotka vstraivaemykh prilozheniy / A. E. Vasil'ev. - SPb. : BKHV-Peterburg, 2008. - 304 s.

2. Klyuchev A. O. Apparatnye i programmnye sredstva vstraivaemykh system / A. O. Klyuchev, D. R. Kovyazina, P. V. Kustarev, A. E. Platunov. - SPb. : SPbGU ITMO, 2010. - 287 s.

УДК 621.341

ПОМЕХОУСТОЙЧИВОСТЬ РАДИОТЕХНИЧЕСКИХ УСТРОЙСТВ ОХРАНЫ ПРИ ИСПОЛЬЗОВАНИИ КОГЕРЕНТНОГО И НЕКОГЕРЕНТНОГО

МЕТОДОВ ОБНАРУЖЕНИЯ

Воловач Владимир Иванович, кандидат технических наук, заведующий кафедрой информационного и электронного сервиса Поволжского государственного университета сервиса, 445677, г. Тольятти, ГСП, ул. Гагарина, 4, e-mail: ssunrise@mail.ru.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.