Способ синхронизации группы разнотипных микроконтроллеров с управлением временем синхронной работы

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

УДК 004.414.28

Способ синхронизации группы разнотипных микроконтроллеров с управлением временем синхронной работы

Собко А. А., Осинцев А. В., Комнатнов М. Е., Газизов Т. Р.

Актуальность работы: современные радиоэлектронные средства (РЭС) состоят из большого количества электронных компонентов, одними из которых являются микроконтроллеры (МК). Широкое распространение МК получили за счет миниатюризации и сочетания в одном кристалле функций процессорного и периферийных устройств. Использование нескольких МК для решения общей задачи и работы с большим количеством периферийных устройств приводит к задаче синхронизации работы группы МК. Цель работы - разработать программно-аппаратный способ синхронизации работы группы МК различных вычислительных архитектур, функционирующих на различных системных частотах, с возможностью контроля синхронной работы с общим периодом работы для всех МК. Новизной работы является возможность синхронизации группы МК, используя обработчики внешнего прерывания, не внося дополнительные аппаратные изменения в РЭС, с возможностью добавления нового МК в синхронизируемую группу без дополнительных аппаратно-программных изменений. Результат: разработанный способ позволяет синхронизировать работу различных вычислительных систем, таких как МК, системы на кристалле, программируемые логические интегральные схемы, системы на модуле и др. вычислительные средства. Способ позволяет выполнение каждым МК в заданном промежутке времени отдельной задачи (кода) синхронно в группе МК разной архитектуры, вне зависимости от частоты работы каждого МК. Использование общей шины сброса МК позволяет восстановить синхронную работу в случае сбоя. Использование общей шины сброса счетчика импульсов синхронизации позволяет избежать накопления ошибки при подсчете и минимизировать время ожидания готовности всех МК перед выполнением синхронной работы. Практическая значимость: синхронизация группы вычислительных средств (МК, ПЛИС, СнК, SoM), работающих на разных системных частотах и выполняющих общую задачу, а также масштабируемость системы. Предложенный способ синхронизации может быть применен в разработке сложных (комбинированных) систем управления, в процессе работы которых задействовано несколько вычислительных средств, например, в робототехнических комплексах, автоматизированных системах управления технологическими процессами, беспилотных летательных аппаратах, измерительных приборах, интернете вещей, сенсорных сетях и других областях. При этом, такой способ синхронизации является надежным с точки зрения защищенности информации об устройстве системы и позволяет скрыть подробную техническую информацию: какие модели и сколько вычислительных средств работает синхронно, какие задачи выполняют остальные вычислительные средства в момент синхронизации, синхронно или асинхронно происходит процесс работы. Применение методов реверсивной инженерии и изучение программного кода отдельно взятого вычислительного средства не даст подробной информации, поскольку необходимо применение методов реверсивной инженерии ко всему (комплексу) разработанного устройства.

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

Библиографическая ссылка на статью:

Собко А. А., Осинцев А. В., Комнатнов М. Е., Газизов Т. Р. Способ синхронизации группы разнотипных микроконтроллеров с управлением временем синхронной работы // Системы управления, связи и безопасности. 2019. № 3. С. 51-63. DOI: 10.24411/2410-9916-2019-10304. Reference for citation:

Sobko A. A., Osintsev A. V., Komnatnov M. E., Gazizov T. R. Method of synchronization of a group of microcontrollers of different types with management of the synchronous work duration. Systems of Control, Communication and Security, 2019, no. 3, pp. 51-63. DOI: 10.24411/2410-9916-2019-10304 (in Russian).

51

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

Актуальность

В настоящее время применение микроконтроллеров (МК) при проектировании радиоэлектронных средств (РЭС) является достаточно широкой практикой во всех отраслях промышленности. МК получили обширное распространение за счет большого разнообразия вычислительных архитектур (8-32 разрядные), характеристик, миниатюризации, гибкости в сочетании вычислительных и периферийных устройств, различных интерфейсов связи (I2C, 1-Wire, SPI, Ethernet, RS-232, CAN, USB и др.) и прочего. Рост числа задач, возлагаемых на РЭС, таких как контроль большого количества разнесенных устройств, проектирование систем сбора данных с датчиков и др., приводит к использованию нескольких МК для решения общей задачи, позволяющему взаимодействовать с большим количеством периферийных устройств. При этом появляется необходимость в выполнении группой МК действий с определенной периодичностью, в связи с чем возникает задача синхронизации их работы. Современные тенденции разработки сложных систем управления приводят к использованию в них группы различных МК, выполняющих различные функции в рамках общей задачи. Примером подобных систем являются робототехниче-ские, авиационные и бионические системы [1-3]. В состав подобных систем может входить большое количество МК, работающих с сенсорными устройствами и механизмами управления. Зачастую подобные системы управляются одним высокопроизводительным МК или системой-на-кристалле (СнК) под управлением операционной системы реального времени (ОСРВ, RTOS). Однако, данный способ сложен в реализации, требует внесения дополнительного кода в ОСРВ, изменения логики работы программного обеспечения (ПО), усложняет функционирование системы в целом, имеет программные ограничения и обладает сложным процессом отладки и тестирования ПО. Добавление новой задачи в ОСРВ сказывается на быстродействии и надежности работы всей системы.

Синхронизация является ключевым предметом при выполнении задач в реальном времени [4]. Общеизвестные методы синхронизации МК предполагают использование прецизионных кварцевых генераторов. Существуют методы синхронизации времени с использованием неточных CMOS-генераторов [5]. Проблема синхронизации довольно обширна [6], поскольку тактовые генераторы и МК, используемые в сложных системах, не являются абсолютно точными и не поддерживают высокую точность и стабильность работы в реальном времени [7]. Одним из известных способов синхронизации является применение общего внешнего тактового генератора (ВТГ) для каждого МК в группе. Подобный метод широко применяется [8, 9], однако имеет ряд недостатков: группа МК должна быть однотипной, работа группы МК возможна только на одной системной частоте, увеличение количества МК ведет к нестабильной работе МК из-за искажения формы сигнала ВТГ. Отсутствие контроля синхронной работы и инструментов регулирования синхронной работы МК также накладывает ограничения по применению существующих способов синхронизации [10, 11]. Способы синхронизации группы разных МК, работающих на различ-

DOI: 10.24411/2410-9916-2019-10304

Systems of Control, Communication and Security

ISSN 2410-9916

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

Способ синхронизации

Каждый п-й МК работает на своей частоте /мкп, заданной внутренним или внешним тактовым генератором от внутреннего или внешнего кварцевого резонатора (2п). Частота /втг задается из условия /втг< /мкп, поскольку МК должен подсчитывать количество сигналов синхронизации от ВТГ (рис. 1). На выходе ВТГ, в качестве которого используется микросхема часов реального времени, устанавливается заданная частота прямоугольных (тактовых) импульсов fвтг, которые поступают на один из входов порта каждого МК. При этом вход МК должен поддерживать обработку внешних прерываний, поскольку функция обработки внешних прерываний ведет подсчет сигналов синхронизации. В каждом МК реализован счетчик сигналов синхронизации Смк Как только Смк достигает установленного (заданного) значения, происходит вызов внешнего прерывания. Таким образом, все МК будут вести один подсчет импульсов от ВТГ, и значения счетчиков СМК, синхронизируемых МК, будут равны.

При срабатывании внешнего прерывания МК вызывается функция, соответствующая данному прерыванию и выполняющая инкрементирование переменной СМК счетчика принятых сигналов ВТГ в памяти МК. Таким образом, происходит подсчет принятых сигналов синхронизации от ВТГ, каждым МК в группе. Как только переменная счетчика в памяти МК, отвечающая за подсчет сигналов синхронизации, (рис. 2) достигнет заданного значения, срабатывает отвечающее за начало синхронной работы внутреннее прерывание МК, которое сбрасывает счетчики всех других МК синхронизируемой группы (Ъмю - $мк4).

/о Л /2 /з /4 и и Ь Ь Ь /10/11 /12/13 /и/15/)« /17/15/19 /20/21

Рис. 1. Подсчет сигналов синхронизации группой МК

/о Ь /2 /з /4 и /б /7 и /9 Гю tu /12 ¿13 /н /15

Рис. 2. Временная диаграмма сигналов синхронной работы группы МК

Событие Бсин в момент времени и означает, что все МК готовы к синхронной работе, поскольку в данный момент времени поступил последний сигнал синхронной работы от БмК4. При этом последовательно выполняются сле-

DOI: 10.24411/2410-9916-2019-10304

Systems of Control, Communication and Security

ISSN 2410-9916

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

Счетчик синхронной работы может быть реализован аппаратным таймером МК либо программно в памяти МК. В момент, когда хотя бы один МК из группы завершает свою работу (t9), происходит окончание синхронной работы (рассинхронизация группы МК): выход из функции синхронной работы группы МК; сброс значения счетчика периода синхронной работы; переход к подсчету сигналов синхронизации. Так, из рис. 2 видно, что Smki и Smk3 начали и завершили работу одновременно, в то время как другие МК еще продолжали выполнять работу.

Учитывая, что все МК могут работать на разных системных частотах, а подсчет сигналов синхронизации осуществляется каждым МК, начало синхронной работы для каждого МК может отличаться на период времени (tS) между готовностью первого и последнего МК в группе. Программная реализация предложенного способа синхронизации также может работать по схеме Master-Slave (рис. 3 а). Когда в системе присутствует ведущее устройство, в задачу которого входит контроль и управление процессом синхронизации (включать/выключать сигнал синхронизации ВТГ и изменять частоту генерации сигнала синхронизации ВТГ, выполнять программный и/или аппаратный сброс синхронизируемых МК и т.д.), перечисленные операции выполняются за счет прямого обращения Master к ВТГ посредством интерфейса передачи данных, используя вывод CMD (рис. 3 а). Таким образом, использование схемы синхронизации Master-Slave предоставляет дополнительные инструменты, что позволяет гибко настроить синхронизацию.

а б

Рис. 3. Структурные схемы устройства синхронизации МК Master-Slave

Схема Slave-Slave (рис. 3 б) предполагает отсутствие Master (ведущего устройства), в данном случае все синхронизируемые МК в равной степени принимают участие при выполнении общей работы. Настройка ВТГ осуществляется перед началом работы. Каждый МК принимает сигнал синхронизации, поступающий на вывод МК CNTn от вывода SQW ВТГ. Все

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

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

Таким образом, первый МК, у которого счетчик синхросигналов достигнет установленного значения, вызовет прерывание INTn у всех МК для сброса счетчика CNTn, что позволит избежать накопления ошибки подсчета сигналов синхронизации каждым МК. В случае возникновения аппаратного либо программного сбоя в одном или нескольких МК, все МК способны повторно синхронизироваться за счет внешнего прерывания.

Возможен аппаратный сброс всех МК. При срабатывании сброса (Reset) в одном МК, все остальные МК синхронизируемой группы будут перезагружены. Данная опция применима в случае возникновения программного сбоя в одном из МК. В случае возникновения аппаратного сбоя МК, в зависимости от причины (характера) сбоя, МК может самостоятельно выполнить сброс (Reset). Если этого не произойдет, ведущий МК (Master) синхронизируемой группы выполнит аппаратный сброс всех синхронизируемых МК. Поскольку все МК имеют линию (шину) сброса (Res), то при срабатывании перезагрузки (Reset) у одного МК, остальные МК в группе также выполнят операцию сброса (Reset). На выводе Cn (рис. 3) МК генерируется широтно-импульсно модулированный (ШИМ) сигнал, скважность которого каждый МК регулирует самостоятельно.

Эксперимент

Разработан алгоритм синхронизации МК по схеме Master-Slave (рис. 4) и тестовое ПО на языке Си (МК ATmega) и Python (СнК Espressif). На первом этапе работы алгоритма выполняется процесс инициализации, который включает объявление переменных, инициализацию счетчика сигналов синхронизации, настройку внешнего прерывания (задается адрес ВТГ на шине I2C и выполняется настройка частоты синхронизации ведущим МК (Master)).

При успешной инициализации, МК подсчитывает сигналы синхронизации от ВТГ. При достижении счетчиком требуемого количества сигналов синхронизации выполняется процесс синхронной работы МК. Для примера, тестовый стенд по синхронизации группы МК выполнял синхронную передачу управляющих сигналов ШИМ. При окончании периода синхронной работы, когда счетчик сигналов синхронизации достигнет заданного количества одного периода синхронной работы, на выводе RCNTn МК инвертируется сигнал логического уровня, что вызывает прерывание у всех МК синхронизируемой группы.

Тестирование предложенного способа синхронизации выполнено на стенде с двумя МК компании Atmel и двумя СнК от компании «Espressif Systems». МК и СнК спроектированы на различной архитектуре и функционируют на разных системных частотах (таблица 1). В качестве ВТГ использована интегральная схема часов реального времени DS3231, которая имеет вывод

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

SQW/INT, поддерживающий тактирование на различных частотах (1 Гц, 1,024 кГц, 4,096 кГц, 8,192 кГц) и отдельный вывод с частотой сигнала

Таблица - Список синхронизируемых МК

МК Разрядность

ATmega328 8 8

ATmega2560 8 16

Espressif Tensilica L106 32 40

Espressif Tensilica LX6 32 240

Измерение выходных ШИМ сигналов МК выполнено при помощи двух-канального осциллографа Keysight EDUX 1002G. Проведено сравнение выходных сигналов МК ATmega2560 и СнК Tensilica L106 и LX6 с выходным сигналом ATmega328. Из рис. 5 видно, что МК ATmega328 и ATmega2560 согласованно начинают и оканчивают общую задачу в течение заданного промежутка времени.

DOI: 10.24411/2410-9916-2019-10304

Systems of Control, Communication and Security

ISSN 2410-9916

m

¡3 2

<D

К

я

и 0 «

&

« 4

к

Mega328

Mega2560

168

336 504 Время /, мс

672

Рис. 5. Осциллограммы выходного напряжения при синхронной работе МК ATmega328 и ATmega2560

Время I, мс б

Рис. 6. Выходной сигнал Mega2560

и Mega328(-) при начале (а) и окончании (б) синхронной работы

Аналогично сравнивались СнК Tensilica L106 и LX6 с МК ATmega328. При этом МК ATmega328 первым начал выполнять задачу (завершил подсчёт сигналов синхронизации ВТГ) (рис. 6 а), а решение об окончании времени работы принято МК ATmega2560, о чём свидетельствует сокращение длительности последнего импульса на выходе ATmega328 (рис. 6 б). Также МК в группе могут выполнять собственные, разные инструкции (код) в течение заданного времени. Например, на рис. 7 показано как СнК Tensilica LX6 выполняет инструкцию отличную от задачи ATmega328. В частности, ШИМ сигнал на выходе Tensilica LX6 имеет более высокую частоту и больший коэффициент заполнения.

При начале и окончании синхронной работы МК с сигналами ШИМ выявлено, что период работы СнК с большей производительностью оказался на 1,5 мс дольше (рис. 8б) периода работы остальных МК, работающих на более низкой частоте (ATmega328 и ATmega2560). И это вызвано тем, что более производительный СнК успевает обработать большее количество машинных инструкций, раньше заканчивает подсчёт сигналов синхронизации и первым выдаёт команду на завершение периода синхронной работы, а из-за того, что выходной ШИМ сигнал ATmega328 имеет вдвое больший период, последний импульс не успевает появиться, что приводит к подобному результату.

DOI: 10.24411/2410-9916-2019-10304

Systems of Control, Communication and Security

ISSN 2410-9916

0 40 80 120

Время t, MC

Рис. 7. Осциллограммы выходного напряжения, демонстрирующие синхронную работу СнК Tensilica LX6 и ATmega328

а б

Рис. 8. Выходной сигнал ШИМ, начало

Tensilica LX6

Заключение

Разработан способ синхронизации группы МК, позволяющий выполнять общую задачу группой МК и СнК, не связанных между собой каким-либо интерфейсом связи. Синхронизируемые МК и СнК могут не разделяться на ведущего (Master) и ведомых (Slave) (Master-to-Slave). За счёт этого, каждый МК выполняет собственные инструкции (код), не влияя на работу остальных МК группы, что позволяет синхронизировать работу вычислительных средств различных производителей и добиться гибкой настройки синхронизации. Способ синхронизации МК позволяет с минимальными изменениями в РЭС реализовать контроль длительности периода синхронной работы МК, выполняя работу (синхронно, асинхронно, попеременно и т.д.) согласно реализованному алго-

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2G19

Systems of Control, Communication and Security ISSN 2410-9916

ритму решения определенной задачи. Данного результата удается достичь за счет использования каждым MK собственного (внутреннего/внешнего) тактового генератора, подсчета каждым MK сигналов синхронизации от ВТГ и настройки таймеров/счетчиков MK.

Также данный способ позволяет выполнять общую задачу группой MK, используя минимальные аппаратные средства, и применим к уже готовым устройствам в виде отдельного модуля либо модификации схемы устройства (РЭС). Универсальность способа заключается в том, что допускается синхронизировать работу как MK, так и CkK различных производителей и добиться гибкой настройки синхронизации. Использование предложенного способа синхронизации в работе над терморегулятором климатической экранированной ТЕМ -камеры позволило добиться синхронного управления элементами Пельтье посредством ШИМ сигналов, с заданным временем периода синхронной работы.

Научная новизна способа синхронизации группы разнотипных вычислительных средств (М^ ПЛИС, CkK, SoM) заключается в следующем:

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

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

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

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

Исследование выполнено за счет гранта Российского научного фонда (проект № 19-79-10162) в ТУСУРе.

Литература

1. Prasetio B. H. Ensemble Kalman filter and PID controller implementation on self balancing robot // International electronics symposium «IES» (Surabaya, 2930 September 2015). - Surabaya, 2015. - P. 105-109.

2. Monterrosa N., Bran C. Design and implementation of a motor control module based on PWM and FPGA for the development of a UAV flight controller // Proceeding of Chilean conference on electrical, electronics engineering, information and communication technologies «CHILECON» (Santiago, 28-30 October 2015). -Santiago, 2015. - P. 783-789.

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

3. Ho M., Desai J. P. Towards a MRI-compatible meso-scale SMA-actuated robot using PWM control // Proceeding of 3rd IEEE RAS and EMBS international conference on biomedical robotics and biomechatronics «BioRob» (Tokyo, 26-29 September 2010). - Tokyo. - P. 361-366.

4. Terraneo F., Rinaldi L., Maggio M., Papadopoulos A. V., Leva A. FLOPSYNC-2: efficient monotonic clock synchronization // Proceeding of 2014 IEEE Real-time systems symposium «RTSS 2014» (Rome, 2-5 December 2014). -Rome, 2014. - P. 11-20.

5. Boyle J., Reeve J., Weddell A. DiStiNCT: Synchronizing nodes with imprecise timers in distributed wireless sensor networks // IEEE Transactions on Industrial Informatics. 2017. Vol. 13. № 3. P. 938-946.

6. Lamport L. Time, clocks, and the ordering of events in a distributed system // Communications of the ACM. 1978. Vol. 21. № 7. P. 558-565.

7. Probert R.L., Yu H., Saleh K. Relative-clock-based specification and test result analysis of distributed systems // Proceeding of eleventh annual international phoenix conference on computers and communication (Scottsdale, 1-3 April 1992). -Scottsdale, 1992. - P. 687-694.

8. Phang S. K., Ong J. J., Yeo T. C. R., Chen B. M., Lee T. H. Autonomous Mini-UAV for indoor flight with embedded on-board vision processing as navigation system // Proceeding of IEEE Region 8 international conference on computational technologies in electrical and electronics engineering «SIBIRCON» (Listvyanka, 1115 July 2010). - Listvyanka, 2010. - P.722-727.

9. Yurkevich V. D. Active exoskeleton tracking control system // Proceeding of IEEE international conference on computational technologies in electrical and electronics engineering «SIBIRCON» (Novosibirsk, 28-30 October 2015). -Novosibirsk, 2015. - P. 124-129.

10. Schumacher H., Ringger K. Method and device for synchronizing and testing a processor and a monitoring circuit // Патент на изобретение US 6 675 320, опубл 13.04.2000, бюл. № W000/20969.

11. Собко А. А., Осинцев А. В., Комнатнов М. Е., Газизов Т. Р., Сухоруков М. П. Устройство синхронизации микроконтроллеров // Патент на изобретение RU 2674878 С1, опубл 13.12.2018, бюл. №35.

References

1. Prasetio B. H. Ensemble Kalman filter and PID controller implementation on self balancing robot. International electronics symposium «IES», Surabaya, 2015, pp. 105-109.

2. Monterrosa N., Bran C. Design and implementation of a motor control module based on PWM and FPGA for the development of a UAV flight controller.

Proceeding of Chilean conference on electrical, electronics engineering, information and communication technologies «CHILECON», Santiago, 2015, pp. 783-789.

3. Ho M., Desai J. P. Towards a MRI-compatible meso-scale SMA-actuated robot using PWM control. Proceeding of 3rd IEEE RAS and EMBS international conference on biomedical robotics and biomechatronics «BioRob», Tokyo, pp. 361366.

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

4. Terraneo F., Rinaldi L., Maggio M., Papadopoulos A. V., Leva A. FLOPSYNC-2: efficient monotonic clock synchronization. Proceeding of 2014 IEEE Real-time systems symposium «RTSS 2014», Rome, 2014, pp. 11-20.

5. Boyle J., Reeve J., Weddell A. DiStiNCT: Synchronizing nodes with imprecise timers in distributed wireless sensor networks. IEEE Transactions on Industrial Informatics, 2017, vol. 13, no. 3, pp. 938-946.

6. Lamport L. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 1978, vol. 21, no. 7, pp. 558-565.

7. Probert R.L., Yu H., Saleh K. Relative-clock-based specification and test result analysis of distributed systems. Proceeding of eleventh annual international phoenix conference on computers and communication, Scottsdale, 1992, pp. 687-694.

8. Phang S. K., Ong J. J., Yeo T. C. R., Chen B. M., Lee T. H. Autonomous Mini-UAV for indoor flight with embedded on-board vision processing as navigation system. Proceeding of IEEE Region 8 international conference on computational technologies in electrical and electronics engineering «SIBIRCON», Listvyanka, 2010, pp. 722-727.

9. Yurkevich V. D. Active exoskeleton tracking control system. Proceeding of IEEE international conference on computational technologies in electrical and electronics engineering «SIBIRCON», Novosibirsk, 2015, pp. 124-129.

10. Schumacher H., Ringger K. Method and device for synchronizing and testing a processor and a monitoring circuit. Patent USA no. 6 675 320, 2000.

11. Sobko A. A., Osintsev A. V., Komnatnov M. E., Gazizov T. R., Sukhorukov M. P. Ustroistvo sinkhronizatsii mikrokontrollerov [Device for synchronizing microcontrollers]. Patent Russia, no. 2674878. 2018.

Статья поступила 4 сентября 2019 г.

Информация об авторах

Собко Александр Александрович - аспирант кафедры телевидения и управления, младший научный сотрудник научно-исследовательской лаборатории «Безопасность и электромагнитная совместимость радиоэлектронных средств». Томский государственный университет систем управления и радиоэлектроники. Область научных интересов: электромагнитная совместимость, системы управления, схемотехника, трассировка печатных плат. E-mail: alexfreetibet@gmail.com

Осинцев Артем Викторович - аспирант кафедры автоматизации и обработки информации, младший научный сотрудник научно-исследовательской лаборатории «Безопасность и электромагнитная совместимость радиоэлектронных средств». Томский государственный университет систем управления и радиоэлектроники. Область научных интересов: встраиваемые системы, робототехника, проектирование устройств, программируемые логические интегральные схемы (ПЛИС), автоматизированные системы управления, интернет вещей (IoT). E-mail: kubenet@gmail.com

Комнатное Максим Евгеньевич - кандидат технических наук, старший научный сотрудник научно-исследовательской лаборатории «Безопасность и

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

электромагнитная совместимость радиоэлектронных средств». Доцент кафедры телевидения и управления. Томский государственный университет систем управления и радиоэлектроники. Область научных интересов: электромагнитная совместимость; экранирование; устройства для испытаний на электромагнитную совместимость. E-mail: maxmek@mail.ru

Газизов Тальгат Рашитович - доктор технических наук, доцент. Заведующий кафедрой телевидения и управления. Томский государственный университет систем управления и радиоэлектроники. Область научных интересов: электромагнитная совместимость, численные методы. E-mail: talgat@tu.tusur.ru Адрес: 634050, г. Томск, пр. Ленина, 40.

Method of synchronization of a group of microcontrollers of different types with management of the synchronous work duration

A. A. Sobko, A. V. Osintsev, M. E. Komnatnov, T. R. Gazizov

The relevance of the work: Modern radio electronic facilities (REFs) consist of a large number of electronic components, some of which are microcontrollers (MCs). MCs are widely spread due to miniaturization and combination ofprocessor and peripheral devices functions in one crystal. Use of several MCs for solving a general task and working with a large number of peripheral devices leads to the problem of the MCs group work synchronization. The aim of the work is to develop a hardware-software method of synchronization of the MCs group work with a possibility to control synchronous work with the general period of work for all MCs. MCs can have different computing architectures functioning at different system frequencies. Novelty: synchronization of the MCs group using external interrupt handlers, without making additional hardware changes in the REFs with the possibility of adding a new MCs to the synchronized group without additional hardware and software changes is the novelty of the work. Results: the developed method allows to synchronize the work of various computer systems, such as MCs, systems on a crystal, programmable logic integrated circuits, systems on a module, etc. computing tools. This method allows each MC to perform a separate task (code) synchronously in the MC group of different architectures, regardless of the frequency of each MC. Using the common MC reset bus allows to restore synchronous operating if a failure happens. Using the common bus to reset the synchronization pulse counter, allows to avoid the accumulation of counting errors and to minimize the waiting time for all MCs to be ready before synchronous operation. Practical relevance: synchronization of a group of computational tools (MC, FPGA, SoC, SoM) working on different system frequencies, performing a common task, as well as the scalability of the system. The proposed method of synchronization can be used in the development of complex (combined) control systems, in the work process of which two or more computing tools are involved, for example, in robotic systems, distributed control systems, unmanned aerial vehicles, measuring instruments, Internet of things, sensor networks and other areas. At the same time, this method of synchronization is reliable, if we speak about the system structure information security, and allows you to hide detailed technical information, for example, models type and quantity of synchronously working computing means, kind of tasks at the time of synchronization which other computing means perform and working mode: synchronous mode or asynchronous mode . Application of the reverse engineering methods and study of the program code of a separate computational mean can't give detailed information. As it is necessary to apply the reverse engineering methods to explore the developed devices in general.

Key words: synchronization, microcontroller, oscillator, computing architecture, pulse width modulation, real time clock.

DOI: 10.24411/2410-9916-2019-10304

Системы управления,связи и безопасности №3. 2019

Systems of Control, Communication and Security ISSN 2410-9916

Information about Authors

Alexander Alexandrovich Sobko - postgraduate student at the Department of Television and Control, junior research fellow of the Resea rch Laboratory of «Safety and Electromagnetic Compatibility of Radioelectronic Facilities» (SECRF). Tomsk State University of Control Systems and Radioelectronics. Area of expertise: electromagnetic compatibility, control systems, circuit diagram, PCB layout. E-mail: alexfreetibet@gmail.com

Artem Viktorovich Osintsev - postgraduate student at the Department of Data Processing Automation, junior research fellow of the Research Laboratory of «Safety and Electromagnetic Compatibility of Radioelectronic Facilit ies» (SECRF). Tomsk State University of Control Systems and Radioelectronics. Area of expertise: embedded system, robotics, device design, FPGA, automated control systems, Internet of Things. E-mail: kubenet@gmail.com

Maksim Evgen'evich Komnatnov - Ph.D. in engineering sciences, senior research fellow of the Research Laboratory of «Safety and Electromagnetic Compatibility of Radioelectronic Facilities» (SECRF). Associate Professor at the Department of Television and Control. Tomsk State University of Control Systems and Radioelectronics. Field of research: electromagnetic compatibility; electromagnetic shielding; facilities for EMC testing. E-mail: maxmek@mail.ru

Talgat Rashitovich Gazizov - Dr. habil. of Engineering Sciences, Assistant Professor, head of the Department of Television and Control. Tomsk State University of Control Systems and Radioelectronics. Field of research: electromagnetic compatibility; numerical methods. E-mail: talgat@tu.tusur.ru

Address: Russia, 634035, Tomsk, Lenina prospect, 40.

DOI: 10.24411/2410-9916-2019-10304