Научная статья на тему 'РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ МНОГОПРОЦЕССОРНЫХ СИСТЕМ С ПРИМЕНЕНИЕМ ВИРТУАЛЬНЫХ МОДЕЛЕЙ'

РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ МНОГОПРОЦЕССОРНЫХ СИСТЕМ С ПРИМЕНЕНИЕМ ВИРТУАЛЬНЫХ МОДЕЛЕЙ Текст научной статьи по специальности «Компьютерные и информационные науки»

29
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
микропроцессор / аппаратное окружение / виртуальная модель / microprocessor / hardware environment / virtual model

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

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

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

SOFTWARE IMPLEMENTATION OF MULTIPROCESSOR SYSTEMS USING VIRTUAL MODELS

The article presents the experience of practical use of virtual models of the hardware environment of microprocessors in the development and debugging of software for a multiprocessor radio transmitting device.

Текст научной работы на тему «РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ МНОГОПРОЦЕССОРНЫХ СИСТЕМ С ПРИМЕНЕНИЕМ ВИРТУАЛЬНЫХ МОДЕЛЕЙ»

«Инновационные аспекты развития науки и техники» УДК 621.396.1

Малышева Ирина Николаевна Malysheva Irina Nikolaevna

кандидат технических наук candidate of technical Science руководитель проекта project head, Плахотнюк Юрий Алексеевич Plakhotnyuk Yury Alekseevitch начальник отдела chief department АО «Концерн «Созвездие» JS «Concern «Sozvezdie»

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

SOFTWARE IMPLEMENTATION OF MULTIPROCESSOR SYSTEMS

USING VIRTUAL MODELS

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

Abstract. The article presents the experience of practical use of virtual models of the hardware environment of microprocessors in the development and debugging of software for a multiprocessor radio transmitting device.

Ключевые слова. микропроцессор, аппаратное окружение, виртуальная модель.

Key words: microprocessor, hardware environment, virtual model.

Одной из составляющих процесса разработки программного обеспечения (ПО) является отладка, в ходе которой программист верифицирует логику работы, анализирует правильность расчетов, проводит тестирование программы. Отладка встроенного ПО (firmware), предназначенного для использования в многопроцессорных устройствах, имеет ряд особенностей по сравнению с отладкой «обычного» ПО (software). Как известно, полноценная отладка ПО в

IXМеждународная научно-практическая конференция составе устройства требует наличия дополнительного оборудования -эмуляторов.

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

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

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

Работой системы управляет системный контроллер, связанный интерфейсом RS-232 с многоядерным сигнальным процессором и взаимодействующий с вышестоящей системой по локальной сети Ethernet. Сигнальный процессор взаимодействует с цифровым синтезатором по

интерфейсу SPI. В локальной сети также находятся контроллер передатчика и технологический компьютер.

Интерфейс

RS-232

Сигнальный

процессор

Интерфейс

SPI

Цифровой синтезатор с интерфейсом SPI

Интерфейс

RS-232

Системный

контроллер

Интерфейс

Ethernet

I

Г Локальная сеть )

1С г

Технологический компьютер Интерфейс Контроллер

с программой администрирования и диагностики Ethernet передатчика

Рис.1. Функциональная схема системы управления радиопередающего

устройства

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

Для отладки ПО сигнального процессора был использован симулятор, имитирующий работу всех ресурсов микросхемы - ядер RISC и DSP, а также периферии. Программные модули, обеспечивающие имитацию функционирования блоков UART и SPI микропроцессора, имеют программные интерфейсы, позволяющие при загрузке в симулятор отлаживаемой программы одновременно загрузить соответствующий модуль расширения и организовать транзит данных к модели аппаратного окружения. Собственно комплекс моделей представляет собой отдельную программу, запускаемую на том же компьютере.

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

Процесс информационного обмена организуется следующим образом.

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

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

графического интерфейса комплекса моделей. Например, нажимает кнопку

«Начать передачу».

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

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

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

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

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

6. Для обмена с контроллером передатчика используется локальная сеть, доступ сигнального процессора к которой возможен только через системный контроллер. В зависимости от того, используется ли при отладке реальный

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

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

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

устройства [3, 4]

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

Таким образом, встроенное ПО (firmware) процессоров системы управления выполняется с полным реализмом, под полным контролем разработчика, что дает возможности для тестирования и отладки, практически недостижимые другими способами.

IXМеждународная научно-практическая конференция Библиографический список:

1. Методика исследования интерфейсов взаимодействия подсистем в радиотехнических комплексах на основе использования виртуальных моделей / И.Н. Малышева, Ю.А. Плахотнюк // Сборник трудов XXV научно-технической конференции «Радиолокация, навигация, связь», Воронеж, 16-18 апреля 2019 г. - Т.1. - С.205-209.

2. Моделирование аппаратного окружения для радиоканалов управления / И.Н. Малышева, Ю.А. Плахотнюк, В.Ф. Свердел // Сборник трудов XXV научно-технической конференции «Радиолокация, навигация, связь», Воронеж, 16-18 апреля 2019 г. - Т.1. - С.239-246.

3. Модуль имитатора аппаратного окружения контроллеров многоканального комплекса радиосвязи: свидетельство о государственной регистрации программы для ЭВМ №2018666355 / И.Н. Малышева, Ю.А. Плахотнюк // заявлено 04.12.18; зарегистрировано 17.12.18.

4. Модуль имитатора аппаратного окружения контроллера мультисервисной сети: свидетельство о государственной регистрации программы для ЭВМ №2018666544 / И.Н. Малышева, Ю.А. Плахотнюк // заявлено 04.12.18; зарегистрировано 18.12.18.

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