СПОСОБ ФУНКЦИОНИРОВАНИЯ ПРОЦЕССОРА В СРЕДЕ РЕАЛЬНОГО ВРЕМЕНИ
METHOD FOR PROCESSOR OPERATION IN REAL-TIME ENVIRONMENT

Среды реального времени представляют собой случаи применения компьютеров или подобных устройств обработки данных, которые определенное событие или реакцию должны предоставлять не только корректно, но и гарантированным образом в пределах заданного временного интервала, чтобы обеспечивать безупречную работу оборудования, например робота.
Современные высокопроизводительные процессоры, которые используются в компьютерах, часто имеют высокие мощности потерь при соответствующей генерации тепла. Поэтому часто предусматривается энергосберегающий режим или состояние покоя, в которое процессоры могут переключаться, когда они в текущий момент не требуются.
В средах реального времени энергосберегающие режимы современных процессоров чаще всего не могут использоваться, так как требуемое для повторного возвращения процессора из состояния покоя в рабочее состояние время «пробуждения» влияет на время запаздывания отклика системы, так что требования синхронизации в необходимом случае не выдерживаются. Время запаздывания отклика является временным интервалом между событием реального времени, например, сигналом сенсора, и наиболее поздним допустимым моментом времени требуемой реакции на событие реального времени.
В WO 2009/148472 А2 описано электронное устройство с процессором и планировщиком экономии энергии, который поддерживает таблицу событий, в которой сохраняются завершенные события и для каждого из этих событий временная метка и допустимая временная длительность. Согласно сохраненным в таблице событий временным меткам и допустимым временным длительностям, происходит смена режима работы процессора между состоянием покоя и рабочим состоянием.
В US 2008/0114967 А1 описано устройство на интегральных схемах с термодатчиками, вычислительными блоками и управляющим блоком для управления работой вычислительных блоков в зависимости от сигналов термодатчиков.
Поэтому задачей изобретения является создание улучшенного способа функционирования процессора в средах реального времени.
Указанная задача решается в соответствии с изобретением способом с признаками пункта 1 формулы изобретения.
Предпочтительные варианты осуществления приведены в зависимых пунктах формулы изобретения.
В соответствующем изобретению способе функционирования процессора в среде реального времени процессор после обработки события реального времени переключается из рабочего состояния в состояние покоя (также определяемое как энергосберегающий режим, состояние низкой мощности или состояние бездействия), причем при предстоящем наступлении последующего события реального времени генерируется вспомогательный сигнал, посредством которого процессор перед наступлением последующего события реального времени переключается в рабочее состояние (также определяемое как режим полной нагрузки или полностью рабочий режим). На ожидаемое событие реального времени можно тогда реагировать несмотря на применение состояния покоя с минимальным временем запаздывания отклика. За счет состояния покоя может экономиться энергия и снижаться отдача тепла.
В первой форме выполнения способа функционирования процессора в среде реального времени процессор после обработки первого события реального времени переключается из рабочего состояния в состояние покоя. Вспомогательный сигнал генерируется таймером. По истечении дифференциального интервала, который включает в себя известный временной интервал между двумя последовательными событиями реального времени за вычетом защитного интервала, процессор посредством таймера переключается в рабочее состояние, так что на ожидаемое событие реального времени можно реагировать с минимальным временем запаздывания отклика. Эта форма выполнения пригодна для сред реального времени с хорошо известным режимом синхронизации, то есть сред реального времени, для которых известен точный временной интервал между двумя событиями реального времени. Таким образом, может экономиться энергия и снижаться отдача тепла.
Защитный интервал следует выбирать таким образом, что процессор при наступлении события реального времени переключается в рабочее состояние и готов для обработки события реального времени. Предпочтительным образом защитный интервал выбирается в диапазоне от 10% до 30%, в частности 20%, продолжительности известного временного интервала между двумя следующими друг за другом событиями реального времени. Например, известный временной интервал между событиями реального времени может составлять пять секунд. В качестве защитного интервала выбирается, например, одна секунда, так что процессор на дифференциальный временной интервал в четыре секунды переключается в состояние покоя.
В другой форме выполнения способа функционирования процессора в среде реального времени процессор обрабатывает события реального времени в форме сигнала по меньшей мере одного датчика. Сигнал генерируется датчиком, когда последний обнаруживает превышение или спадание ниже заданного порогового значения некоторого параметра. После обработки первого события реального времени процессор переключается из рабочего состояния в состояние покоя. Кроме того, предусмотрен по меньшей мере один вспомогательный датчик, который контролирует тот же параметр, но обнаруживает превышение или спадание ниже заданного вспомогательного порогового значения некоторого параметра и затем генерирует вспомогательный сигнал. Вспомогательное пороговое значение выбирается при этом таким образом, что оно достигается в течение изменения значения параметра перед пороговым значением. С помощью вспомогательного сигнала процессор переключается в рабочее состояние, так что он при последующем достижении порогового значения готов реагировать на событие реального времени, то есть сигнал датчика. Эта форма выполнения обеспечивает для приложений реального времени, при которых временной интервал между следующими друг за другом событиями реального времени не известен или варьируется, что время запаздывания отклика выдерживается. И в этой форме выполнения может экономиться энергия и снижаться отдача тепла процессора.
Параметр, контролируемый вспомогательным процессором, может представлять собой расстояние, причем пороговое значение является положением, достижение которого представляет собой событие реального времени. Вспомогательное пороговое значение является тогда вспомогательным положением, которое достигается при прохождении расстояния перед упомянутым положением.
Приложение реального времени может представлять собой, например, применение с моторным приводом. При этом приводной мотор в ходе его работы вызывает изменение параметра, контролируемого датчиком и вспомогательным датчиком. Например, с помощью привода мотора проходят упомянутое расстояние. Вследствие достижения обнаруживаемого датчиком положения, процессор отключает приводной мотор. Для того чтобы отключение осуществлялось с высокой точностью, должно выдерживаться время запаздывания отклика. Это обеспечивается посредством других форм выполнения способа.
С каждым датчиком могут быть ассоциированы два вспомогательных датчика, из которых один обнаруживает превышение заданного вспомогательного порогового значения параметра перед превышением порогового значения, причем другой вспомогательный датчик обнаруживает спадание ниже другого заданного вспомогательного порогового значения параметра перед спаданием ниже порогового значения. Например, таким образом, может обнаруживаться изменение положения с двух направлений.
Формы выполнения способа могут предпочтительно применяться в роботе.
Ниже более подробно поясняются примеры выполнения изобретения со ссылками на чертежи, на которых показано следующее:
Фиг.1 - импульсная диаграмма для пояснения способа функционирования процессора в среде реального времени с известным временным интервалом между двумя последовательными событиями реального времени, и
Фиг.2 - среда реального времени и приводимый мотором компонент, который проходит расстояние, причем положение компонента контролируется датчиком и вспомогательным датчиком.
Фиг.1 показывает импульсную диаграмму для пояснения способа функционирования процессора в среде реального времени с известным временным интервалом ZI между двумя последовательными событиями EZE1, EZE2, EZE3 реального времени.
К моменту времени возникновения события EZE1 реального времени процессор находится в рабочем состоянии BZ и остается там для обработки события EZE1 реального времени. После обработки процессор переключается в состояние покоя RZ. Временной интервал ZI между каждыми двумя последовательными событиями EZE1, EZE2, EZE3 реального времени является известным. Определяется дифференциальный интервал DI из временного интервала ZI за вычетом защитного интервала SI. По истечении дифференциального интервала DI процессор вновь переводится в рабочее состояние BZ, чтобы быть готовым для обработки следующего события EZE2 реального времени. Эта процедура повторяется для события EZE3 реального времени и при необходимости для других событий реального времени.
Предпочтительным образом защитный интервал SI выбирается в диапазоне от 10% до 30%, в частности 20%, продолжительности известного временного интервала ZI. Например, известный временной интервал ZI может составлять пять секунд. В качестве защитного интервала SI тогда выбирается, например, одна секунда, так что процессор до истечения дифференциального интервала DI в четыре секунды может переключаться в состояние покоя RZ.
Фиг.2 показывает среду 1 реального времени и приводимый мотором компонент 2, который проходит расстояние s, причем положение компонента 2 контролируется датчиком 3 и вспомогательным датчиком 4. Приводной мотор 5 компонента 2 управляется процессором 6. В показанном на фиг.2 положении процессор 6 переключен в состояние покоя, после чего он при необходимости обрабатывал заданное событие реального времени.
Во время прохождения расстояния s приводимый мотором компонент 2 сначала достигает положения вспомогательного датчика 4, что обнаруживается им как превышение вспомогательного порогового значения HSW, после чего генерируется вспомогательный сигнал HS, посредством которого процессор 6 переключается в рабочее состояние BZ.
Приводимый мотором компонент 2 продолжает свое движение и достигает положения датчика 3, что обнаруживается им как превышение порогового значения SW, после чего генерируется сигнал, который представляет событие EZE реального времени. Процессор к этому моменту времени находится уже в рабочем состоянии BZ, тем самым он может реагировать на событие EZE реального времени. Например, процессор 6 отключает приводной мотор 5 вследствие события EZE реального времени.
Вспомогательное пороговое значение HSW выбирается таким образом, что оно при изменении параметра достигается перед пороговым значением SW.
Параметром, контролируемым датчиком 3 или вспомогательным датчиком 4, может быть расстояние s или другой параметр, например выбранный из физических, химических или электрохимических параметров (см. например, B. Rohr, H. Wiele, “Lexikon der Technik”, VEB Bibliographisches Institut Leipzig, 1982, стр. 513).
С каждым датчиком 3 могут быть ассоциированы два вспомогательных датчика 4, 4', из которых один обнаруживает превышение заданного вспомогательного порогового значения HSW параметра перед превышением порогового значения SW, а другой вспомогательный датчик 4' обнаруживает спадание ниже другого вспомогательного порогового значения HSW' параметра перед спаданием ниже порогового значения SW. Например, таким образом, может обнаруживаться приближение компонента 2 к положению датчика 3 с двух направлений.