Изобретение относится к отвечающей (responsive) системе для обработки сигналов с множеством блоков обработки данных, которые соединены друг с другом через блоки передачи данных и на которых реализованы вычислительные программы, причем вычислительные программы выполнены модульными. Изобретение далее относится к способу для изготовления отвечающей системы для обработки сигналов в процессе автоматизации.
Из документа "Proceedings of the European Safety and Reliability Conference", ESREL'93, Мюнхен, стр. 825 - 839, известно посредством измеренных и запомненных времен обработки для модулей программных средств отвечающей системы оценивать максимальное время обработки и время прохождения сигнала.
Отвечающая, то есть толерантная к ошибкам и способная к работе в реальном масштабе времени система для обработки сигналов находит разнообразное применение в рамках промышленного процесса автоматизации. Особое значение отвечающая система имеет в процессе автоматизации, в котором требуется соблюдение заданных временных пределов или получение требуемых выходных сигналов внутри заданного временного интервала. Такие требования часто возникают в процессах изготовления, процессах регулирования и управления, а также процессах контроля, например, в технике безопасности атомной энергетической установки. Соблюдение временных пределов или соответственно временных интервалов зависит в решающей степени от работоспособности отдельных компонентов, как аппаратурно-специфичных, так и программно-специфичных компонентов. В комплексных системах, в которых блоки обработки данных соединены друг с другом в большие сети данных, ошибки в программно-специфичных компонентах, в частности ошибки в вычислительных программах, имеют особое значение. Эти ошибки могут составлять до 60% ошибок всей системы. Эти программно-специфичные ошибки могут быть разделены на три группы, причем так называемые ошибки спецификации с 55% встречаются наиболее часто. Ошибки обслуживания с долей порядка 25% имеют примерно такое же значение, что и ошибки реализации, которые имеют долю порядка 20%. Ошибка спецификации, например, имеет место тогда, когда ошибочной является координация между вычислительной программой и предназначенной для выполнения вычислительной программы аппаратурно-специфичной компонентой, что при недостаточной вычислительной мощности может приводить к слишком медленному выполнению программы и тем самым к несоблюдению временных пределов или соответственно временных интервалов. Это обозначается как основанный на синхронизации отказ отвечающей системы.
Чтобы гарантировать соблюдение временных пределов или соответственно временных интервалов, регулируют согласование и контроль обмена данными между отдельными блоками обработки данных, а также обработку данных в блоках обработки данных. Это часто обозначается как расписание "Scheduling". В отвечающих системах различают между обычным расписанием в течение времени прогона обработки сигналов в образующих отвечающую систему блоках обработки данных и предварительным расписанием ("Pre-Runtime-Scheduling). При планировании относительно времени прогона предусмотрен управляющий модуль для соблюдения временных пределов или соответственно временных интервалов, который определяет последовательность вычислительных программ в процессоре блока обработки данных. Каждая из этих программ может при этом, в то время как ведется отработка в процессоре, после истечения интервала обработки с заданной продолжительностью, преждевременного окончания вычисления или под управлением извне снова удаляться из процессора. При этом речь идет о прерывисто управляемом (Interrupt) режиме работы отвечающей системы. При другом известном режиме работы управление обмена данных между блоками обработки данных, а также управление последовательности отработки отдельных подпрограмм в процессоре блока обработки данных происходят с учетом зависимостей между отдельными подпрограммами. Зависимости наглядно определяются так называемыми графами. Подпрограммы при этом представлены в виде узловых точек, которые соединены между собой через направленные отрезки. Подпрограмма выполняется тогда, когда выполнены условия всех направленных отрезков, ведущих к узловой точке. Зависимость между отдельными подпрограммами может определяться перед выполнением процесса автоматизации, причем для выполнения каждой подпрограммы может быть указана максимальная продолжительность времени. Эту продолжительность времени разделяют на множество временных интервалов одинаковой длины, в которых отрабатывают подпрограммы в процессоре. Во время выполнения процесса автоматизации управляющим модулем после истечения временного интервала проверяют, какие подпрограммы удовлетворяют критериям для отработки. После проверки в соответствии с заданными приоритетами запускают соответствующие подпрограммы. Несмотря на предварительное определение времен выполнения и зависимостей подпрограмм между собой, как пояснено выше, при периодической, разделенной на временные интервалы обработке, в которые соответственно одна подпрограмма обрабатывается в процессоре, является необходимым дополнительный контроль и управление. Контроль служит для определения, для какой подпрограммы имеются в наличии необходимые информации для обработки, а управлением выбирают подпрограмму с соответственно высшим приоритетом для обработки в процессоре во время последующего временного интервала. По причине сложности и непредсказуемости прохождения контроля и управления предсказания о соблюдении временных пределов или соответственно временных интервалов для процесса автоматизации являются невозможными, а получаются только во время, в частности, периодической обработки процесса автоматизации.
Задачей изобретения поэтому является указание отвечающей системы для обработки сигналов, в частности для цифровой обработки сигналов, которая из состояния входного сигнала производит состояние выходного сигнала и перед обработкой состояния входного сигнала позволяет определить максимальное время выполнения для производства состояния выходного сигнала. Дальнейшая задача состоит в том, чтобы указать способ для изготовления отвечающей системы для обработки сигналов в процессе автоматизации.
Согласно изобретению названная первой задача решается за счет отвечающей системы для обработки сигналов, которая имеет множество блоков обработки данных, которые связаны между собой через блоки передачи данных и на которых реализованы вычислительные программы, которые выполнены модульными из множества функциональных модулей. Система производит к каждому состоянию входного сигнала согласно комплексной спецификации обработки, содержащей координации и запросы блоков обработки данных, блоков передачи данных и вычислительных программ, состояние выходного сигнала и содержит далее
a) первый банк данных, в котором запомнены максимальное время обработки каждого функционального модуля в зависимости от приданного в соответствие функциональному модулю блока обработки данных, а также максимальное время передачи каждого блока передачи данных,
b) второй банк данных, в котором запомнены координации блоков обработки данных, блоков передачи данных и вычислительных программ между собой, а также последовательности операций обработки сигналов согласно спецификации обработки,
c) третий банк данных, в котором запомнены параметры блоков обработки данных, блоков передачи данных и вычислительных программ, в частности вид конструкции, номер варианта, техническая спецификация, и
d) синхронизирующий модуль, который из данных, запомненных в банках данных, определяет максимальное время выполнения для получения состояния выходного сигнала из состояния входного сигнала.
Получение состояния выходного сигнала из состояния входного сигнала происходит в реальном масштабе времени, причем в нем обрабатывают и решают сумму подзадач в реальном масштабе времени с помощью комплексной спецификации обработки. Спецификация обработки содержит разделение каждой подзадачи в реальном масштабе времени на различные структурные уровни. Для этого составляют функциональную схему, которая разлагает подзадачу в реальном масштабе времени на частичные задачи вплоть до уровня, в котором соответствующие частичные задачи могут решаться элементарными функциями. Для обработки каждой из этих элементарных функций, например 30-50 элементарных функций, предусмотрен соответствующий функциональный модуль. Для каждого функционального модуля автоматически создается однозначно приданная ему в соответствие вычислительная программа. Функциональный модуль, конечно, может быть реализован также в виде схемы с жестким монтажом. Вследствие модульной структуры функциональных схем, указанных для решения подзадачи в реальном масштабе времени, автоматически из функциональных модулей получают вычислительную программу для решения каждой подзадачи в реальном масштабе времени. За счет применения небольшого количества различных функциональных модулей с известным временем обработки является возможным не только оценить, но и измерить время обработки для требующей больше всего времени и не однородной части каждой вычислительной программы. Таким образом, для каждого блока обработки данных уже со спецификацией обработки имеются точные высказывания о максимальном времени обработки. Анализ исходного текста каждой вычислительной программы больше не требуется, более того максимальное время обработки каждого функционального модуля измеряют в зависимости от блока обработки данных, в частности обрабатывающего функциональный модуль процессора. Это максимальное время обработки запоминают в первом банке данных. Для каждого измерения запоминают относящиеся к третьему банку параметры блока обработки данных, которые идентифицируют точный тип блока обработки данных. Ими являются среди прочих тип процессора, его тактовая частота, величина имеющегося в распоряжении промежуточного накопителя (Cache), время доступа накопителя, количество состояний ожидания. Кроме того, могут быть параметром примененные ступени оптимирования при преобразовании функционального модуля в язык программирования. Определение максимального времени обработки функционального модуля происходит, в частности, через множество произведенных измерений, например, порядка величины от 104 до 107, времени обработки функционального модуля в каждом возможном виде работы. Далее измерение может производиться не только на одном единственном функциональном модуле, но и на множестве функциональных модулей того же самого типа. Количество однотипных функциональных модулей предпочтительно равно количеству функциональных модулей в функциональной схеме. Функциональные модули при измерении имеют доступ к одинаковым значениям, которые, однако, отложены в других областях накопителя. Для этого во время измерения подготавливают окрестность измерения, которая является не более благоприятной, чем окрестность выполнения во время действительной обработки сигналов. Полученное отсюда максимальное время обработки функционального модуля, таким образом, может приниматься в качестве надежной верхней границы для времени обработки функционального модуля. Максимальное время обработки составляет, например, для различных функциональных модулей на процессоре 80486 фирмы Intel 33 с тактовой частотой 33 МГц величину между 3 мкс и 1,5 мс.
Так как кроме вызова отдельного функционального модуля внутри функциональной схемы для решения подзадачи в реальном масштабе времени дополнительно требуются еще только операции копирования и отрицания, максимальное время обработки которых может определяться просто, с учетом координации блоков обработки данных между собой и максимального времени передачи между блоками обработки данных получается максимальное время выполнения для создания состояния выходного сигнала, которое определяется за счет синхронизирующего модуля. Запомненные в трех банках данных значения могут также быть запомнены в только одном единственном банке данных.
Для каждого функционального модуля можно различать три режима работы, а именно инициализацию, параметризацию и текущую работу. Во время параметризации между прочим происходит определение отведенных параметров и вычисление необходимых для функционального модуля накопителей состояния. Во время инициализации производят инициализацию функционального модуля. Для сложного функционального модуля это может длиться дольше, чем максимальное время обработки во время текущей работы. Так как инициализация предшествует собственно обработке сигналов, то на максимальное время выполнения отвечающей системы во время фазы работы это не имеет никакого влияния.
Предпочтительно отвечающая система содержит модуль расписания для составления плана-расписания, который устанавливает начальные моменты времени для периодической отработки отдельных блоков обработки данных и моменты времени передачи для телеграмм данных так, что максимальное время выполнения всей системы является меньше, чем заданная продолжительность времени. Установление моментов времени передачи производят с учетом запомненных в банках данных данных, в частности времен передачи и обработки, а также координации блоков обработки данных и блоков передачи данных между собой. Каждый блок обработки данных выдает с заданным, периодическим интервалом телеграммы данных, которые содержат сигналы, требующиеся для других блоков обработки данных. Поступающие в один блок обработки данных сигналы также периодически отрабатывают. Чтобы гарантировать, что переданные от одного блока обработки данных сигналы своевременно попадают к следующей периодической отработке в принимающем блоке обработки данных, блоки обработки данных являются синхронизированными между собой. Синхронизация может, например, производиться через внешний датчик времени, с которым находятся в соединении все блоки обработки данных. Синхронизация может также производиться непосредственно между двумя блоками обработки данных таким образом, что постоянно сравнивают и приравнивают друг к другу моменты времени передачи передающего блока обработки данных с моментами времени отработки принимающего блока обработки данных.
За счет накопленных в банках данных данных поведения передачи отвечающей системы является возможным установление плана-расписания перед вводом в эксплуатацию отвечающей системы. Моменты времени передачи и отработки отдельных блоков обработки данных можно устанавливать таким образом, что достигается высокая загруженность отвечающей системы. Включенные в сеть блоки обработки данных и блоки передачи данных согласуют друг с другом по их временам передачи и приема так, что в сети не возникают коллизии и сеть не нагружается выше заданной процентной ставки. За счет этого обеспечивается полностью детерминистичное поведение отвечающей системы, причем компоненты системы могут быть пространственно распределены на большие расстояния. Кроме того, за счет этого для отвечающей системы с распределенными компонентами, как, например, в технике безопасности атомной энергетической установки, при появлении множества существенных для техники безопасности сигналов надежно исключается недопустимое подведение множества сигналов к блоку обработки данных, который замедляет их обработку или приводит к ошибочной обработке. В противоположность к известным отвечающим системам, в которых как составление плана-расписания, так и измерение загруженности образованной компонентами сети происходит только во время работы, в заявленной отвечающей системе это происходит уже перед началом работы. Для этого предварительно производят выбор подходящей аппаратуры, в частности процессоров и блоков обработки данных, коаксиальных линий, усилителей, повторителей, мостов и т. д. Соблюдение временных пределов и временных интервалов за счет этого надежно гарантировано с самого начала. Доказательство соблюдения временных пределов и временных интервалов происходит через модульное построение отвечающей системы с помощью комплексной спецификации, которая содержит соответствующее модульное детерминистичное разделение на функциональные схемы, которые в свою очередь составлены из элементарных функциональных модулей.
Предпочтительно отвечающая система содержит модуль контроля, к которому подводят все изменения времен обработки и передачи, в частности путем изменения блоков обработки данных, блоков передачи данных или функциональных модулей. Эти изменения, а также изменения в комплексной спецификации обработки и, таким образом, также в координации отдельных компонентов отвечающей системы друг к другу модуль контроля подводит к синхронизирующему модулю для определения актуализированных времен выполнения. С этими изменениями в комплексной спецификации обработки и тем самым в блоках обработки данных, блоках передачи данных и в функциональных модулях в модуле плана-расписания происходит также новое установление моментов времени передачи телеграмм данных и моментов времени отработки входящих сигналов. За счет этого способность к работе в реальном масштабе времени и толерантность к ошибкам отвечающей системы в значительной степени обеспечены и дальше также при изменениях.
Отвечающая система является особенно пригодной в управляющей системе для управления и/или регулирования промышленной установки. Управляющая система содержит элементы генерации сигналов и элементы регулирования и/или элементы управления, при этом элементы генерации сигналов соединены через блоки обработки данных и блоки передачи данных с элементами регулирования и/или элементами управления. Созданное элементами генерации сигналов состояние входного сигнала обрабатывают с помощью отвечающей системы в реальном масштабе времени, и состояние выходного сигнала отвечающей системы поставляет входные сигналы для элементов управления и/или элементов регулирования. Элементы генерации сигналов могут при этом быть электрическими, оптическими или механическими сенсорными датчиками, которые создают состояние входного сигнала. Это состояние входного сигнала предпочтительно периодически опрашивают. Элементы управления и/или элементы регулирования могут представлять собой вентили, исполнительные приводы, насосы, а также электрические звенья управления и регулирования. Особенно подходящей является отвечающая система в управляющей системе атомной энергетической установки для управления компонентов, существенных для техники безопасности.
Предпочтительно функциональные модули блока обработки данных, которые отрабатываются с тем же периодом на блоке обработки данных, объединены в группе функциональных схем. Группа функциональных схем загружается с заданным периодом в процессор блока обработки данных и отрабатывается там без перерыва так, что обеспечивается периодическая отработка каждого отдельного функционального модуля. Приоритетное управление или соответственно управление прерываний для отработки функциональных модулей, таким образом, не требуется, за счет чего отработка может быть реализована особенно просто.
В функциональных модулях с различными периодическими временами отработки могут быть указаны различные группы функциональных схем, которые имеют соответственно другую продолжительность периода. В качестве опорного периода при этом служит самая короткая продолжительность периода для отработки функционального модуля. Во время этого опорного периода каждый раз происходит отработка функциональных модулей с самой короткой продолжительностью периода, а также отработка части функциональных модулей, которые имеют более длительную продолжительность периода. Например, продолжительность периода быстрой группы функциональных схем составляет 5 мс, а продолжительность периода медленной группы функциональных схем составляет 50 мс. Во время продолжительности периода 5 мс каждый раз обрабатывают быструю группу функциональных схем и соответственно одну десятую часть медленной группы функциональных схем так, что после истечения продолжительности периода 50 мс быстрая группа функциональных схем в целом отработана десять раз, медленная группа функциональных схем в противоположность этому - точно один раз, как это соответствует ее продолжительности периода. За счет этого, кроме того, достигается, что функциональные модули медленной группы функциональных схем могут иметь доступ к новейшим значениям быстрой группы функциональных схем, если это необходимо. Предпочтительно обработка телеграмм данных, полученных от блока обработки данных, а также передаваемых от него телеграмм данных, происходит через самую медленную группу функциональных схем, так как она является определяющей для времени обработки блока обработки данных и, таким образом, определяет также моменты времени приема и передачи.
Отдельные группы функциональных схем при этом во время обработки самой медленной группы функциональных схем могут производить операции ввода и вывода с непосредственно подключенными к блоку обработки данных периферийными блоками. Такими периферийными блоками являются, например, аналоговые и цифровые модули ввода, а также процессоры для сбора и предварительной обработки и фильтрования сигналов. Так как такие периферийные блоки в последовательности отработки соответствующего блока обработки данных обрабатывают отдельно, привлечение их при определении плана-расписания не является необходимым. В группе функциональных схем могут, например, содержаться между 50 и 100 составленных из отдельных функциональных модулей функциональных схем так, что имеющееся в распоряжении во время опорного периода время вычислений может использоваться в значительной степени полностью. За счет определения и разделения групп функциональных схем для обработки во время самой медленной продолжительности периода можно отказаться от приоритетно управляемой обработки на каждом блоке обработки данных. Это определение и разделение является возможным до ввода в эксплуатацию отвечающей системы. При известных условиях требуется только отрабатываемая процессором блока обработки данных команда для самоконтроля с низким приоритетом. Отвечающая система выполняет, таким образом, требование минимального количества команд прерывания (interrupts). Это позволяет, кроме того, использовать автоматически разработанные вычислительные программы.
Направленная на способ изготовления отвечающей системы для обработки сигналов в процессе автоматизации задача решается согласно изобретению за счет того, что множество блоков обработки данных соединяют друг с другом через блоки передачи данных и снабжают вычислительными программами, причем,
а) следуя комплексной спецификации обработки процесса автоматизации, вычислительные программы формально специфицируют и выполняют автоматически модульно из множества функциональных модулей,
b) для каждого функционального модуля в зависимости от приданного ему блока обработки данных определяют максимальное время обработки,
с) для каждого блока передачи данных определяют максимальное время передачи,
d) запоминают времена передачи и обработки данных и
е) из запомненных времен передачи и обработки данных с учетом объединения в сеть блоков обработки данных, а также модульного построения вычислительных программ определяют максимальное время выполнения для процесса автоматизации.
Для изготовленной таким образом отвечающей системы максимальное время выполнения определено до ввода в эксплуатацию. За счет этого можно сделать надежное высказывание относительно того, является ли процесс автоматизации выполнимым изготовленной таким образом отвечающей системой с требуемой быстротой при всех обстоятельствах. Путем изменения комплексной спецификации обработки, в частности вида и количества блоков передачи данных, блоков обработки данных и модульно выполненных вычислительных программ, можно изготавливать отвечающую систему, которая надежно соблюдает заданное время выполнения для процесса автоматизации.
Этому способствуют также установление начальных моментов времени для периодической отработки отдельных блоков обработки данных и установление моментов времени передачи для телеграмм данных, которые передаются от одного блока обработки данных к следующему блоку обработки данных. Предпочтительно блоки обработки данных синхронизируют между собой за счет внешнего датчика времени так, что сдвиг начальных моментов времени и моментов времени передачи, то есть дрейф, исключается. Предпочтительным является регистрировать и предварительно обрабатывать изменения в отвечающей системе и с учетом этих изменений определять заново максимальное время выполнения или, например, устанавливать заново путем изменения моментов времени передачи и начальных моментов времени для периодической отработки. За счет этого можно перед новым пуском в эксплуатацию отвечающей системы обеспечивать, что процесс автоматизации и дальше производится в течение заданной продолжительности времени, что имеет особенное значение, в частности, для процесса автоматизации в рамках техники безопасности атомной энергетической установки.
Примеры выполнения отвечающей системы, а также способ для ее изготовления поясняются более подробно с помощью чертежей, на которых показано:
Фиг. 1 - схематическое построение отвечающей системы без пояснения местного расположения отдельных компонентов системы,
Фиг. 2 и 3 - схематическая последовательность отработки подлежащих обработке в блоке обработки данных вычислительных программ.
Схематически представленная на фиг. 1 отвечающая система 1 содержит множество блоков обработки данных 3, которые соединены друг с другом через блоки передачи данных 2. Блоки передачи данных 2 представляют собой стандартные линии передачи, как, например, коаксиальный этернет-кабель, и также стандартные элементы передачи, как усилители, повторители или мосты. К блокам обработки данных 3 подводят через элементы генерации сигнала 6, которые являются, например, измерительными датчиками состояния входного сигнала. На Фиг. 1 представлены для наглядности только три таких элемента генерации сигнала 6. В рамках управляющей системы, в частности системы техники безопасности атомной энергетической установки, множество таких элементов генерации сигнала 6 расположены в различных, при необходимости, далеко удаленных друг от друга местах, например, в корпусе реактора. Блоки обработки данных 3 соединены с блоками передачи данных 2 в вычислительную сеть, к которой подключены синхронизирующий модуль 5, модуль расписания 4, модуль контроля 9, а также банки данных D1, D2 и D3. Отвечающая система 1, которая представляет собой вычислительную сеть, соединена с элементами регулирования 7, а также элементами управления 8. Эти элементы регулирования 7, а также элементы управления 8 являются, например, выполненными с возможностью управления от двигателя вентилями, которые в открытом состоянии ведут к разгрузке от давления трубопроводов, по которым протекает какая-либо среда. К элементам регулирования 7 и элементам управления 8, из которых для наглядности представлен только один, отвечающей системой передается состояние выходного сигнала. Элементы генерации сигнала 6 выдают с жестким периодом актуальное состояние входного сигнала на отвечающую систему 1, которая самое позднее после максимального времени выполнения определяет отсюда состояние выходного сигнала и передает на элементы регулирования 7, а также элементы управления 8. На каждом блоке обработки данных 3 реализованы вычислительные программы SW, которые выполнены модульными из множества функциональных модулей.
Определение максимального времени выполнения происходит в синхронизирующем модуле 5, который оценивает при этом запомненные в банках данных D1, D2 и D3 значения. Банк данных D1 содержит максимальное время обработки каждого функционального модуля в зависимости от приданного ему в соответствие блока обработки данных 3, а также максимальное время передачи каждого блока передачи данных 2. Банк данных D2 содержит координацию блоков обработки данных 3, блоков передачи данных 2 и вычислительных программ между собой, а также последовательность операций обработки сигналов согласно комплексной спецификации обработки. Банк данных D3 содержит параметры блоков обработки данных 3, блоков передачи данных 2 и вычислительных программ, в частности вид конструкции, номер варианта, техническую спецификацию, тип процессора и другое. С помощью спецификации обработки, которая указывает путь решения для определения желаемого состояния выходного сигнала при наличии состояния входного сигнала с учетом использованных вычислительных программ и блоков обработки данных 3, а также блоков передачи данных, производят определение максимального времени выполнения. Банки данных D1, D2 и D3 могут также быть реализованы в виде одного единственного банка данных с соответствующими областями накопления.
Фиг. 2 показывает схематически временную отработку реализованных на блоке обработки данных вычислительных программ. Эти вычислительные программы выполнены модульными из множества различных функциональных модулей, причем находят применение порядка 30-50 различных функциональных модулей. Каждой вычислительной программой, которая в последующем обозначается также как функциональная схема, решается одна подзадача процесса автоматизации. Процесс автоматизации состоит из подзадач, которые опять-таки подразделены модульно на частичные задачи, функциональные схемы. Например, в технике безопасности атомной энергетической установки указано до 70 подзадач. Они относятся, например, к быстрому отключению реактора, быстрому отключению турбины или разгрузке от давления корпуса реактора при условиях, оцененных, как существенные с точки зрения техники безопасности. Отработка отдельных функциональных схем происходит с определенным для соответствующей функциональной схемы периодом. Функциональные схемы с одинаковыми периодами обработки объединяют в так называемые группы функциональных схем. Здесь указаны для наглядности только две функциональные схемы FPGa и FPGb. Период обработки более быстрой функциональной схемы FPGa составляет 5 мс, а период обработки более медленной группы функциональной схемы FPGb составляет 50 мс. Так как каждая группа функциональных схем содержит до 50 - 100 отдельных функциональных схем, является возможным подразделение группы функциональных схем на различные части с одинаковой продолжительностью обработки без разделения отдельных функциональных схем. За счет этого обеспечена обработка каждой функциональной схемы без перерыва, то есть без выгрузки и новой загрузки в процессор блока обработки данных. Так как период медленной группы функциональных схем составляет 50 мс, его разделяют на десять частей, которые имеют соответственно одинаковое время обработки, например 2 мс. Отработка групп функциональных схем происходит теперь таким образом, что соответственно в процессор загружают более быструю группу функциональных схем FPGa и часть более медленной группы функциональных схем FPGb и там обрабатывают.
Фиг. 3 показывает, например, разделение более медленной группы функциональных схем FPGb на три части, причем первая часть содержит первую функциональную схему FP1, вторую часть второй функциональной схемы FP2 и четвертую функциональную схему FP4, которые соответственно имеют доступ к значениям первой функциональной схемы FP1. Третья часть содержит третью функциональную схему FP3 и пятую функциональную схему FP5, причем третья функциональная схема FP3 имеет доступ к значениям второй функциональной схемы FP2, а пятая функциональная схема FP5 имеет доступ к значениям четвертой функциональной схемы FP4. После загрузки быстрой группы функциональных схем FPGa и соответствующей части медленной группы функциональных схем FPGb происходит соответственно вызов входных или выходных драйверов и после этого ввод данных, необходимых для быстрой группы функциональных схем FPGa, обработка быстрой группы функциональных схем, а также вывод значений, созданных быстрой группой функциональных схем FPGa. В заключение происходит отработка соответствующей части более медленной группы функциональных схем FPGb. С истечением продолжительности периода в 50 мс таким образом быстрая группа функциональных схем FPGa отрабатывается десять раз и более медленная группа функциональных схем FPGb в соответствии со своей продолжительностью периода - точно один раз. К началу этой продолжительности периода происходит, кроме того, отработка принятых от блока обработки данных телеграмм данных, а также в конце более медленного периода передача телеграмм-данных с результатами группы функциональных схем к следующему блоку обработки данных. Самая медленная группа функциональных схем, таким образом, указывает начальные моменты времени для обработки и приема телеграмм данных, а также момент времени передачи для отсылки телеграмм данных. С помощью фиг. 2 и 3 были описаны разделение и отработка вычислительных программ в двух группах функциональных схем с различной продолжительностью периода. Разделение и отработка вычислительных программ происходят аналогово в более чем двух группах функциональных схем.
Изобретение характеризуется отвечающей системой для обработки сигналов, в которой перед вводом системы в эксплуатацию может быть определено максимальное время выполнения для создания состояния выходного сигнала из состояния входного сигнала и может быть установлено как заданное время выполнения. За счет этого можно уже перед вводом в эксплуатацию надежно гарантировать соблюдение временных пределов и временных интервалов таким образом, что отвечающая система является доказанным образом способной к работе в реальном масштабе времени и толерантной к ошибкам. Определение максимального времени выполнения происходит с учетом модульного построения вычислительных программ из элементарных функциональных модулей, а также соответственно максимального времени обработки каждого функционального модуля. Так как далее известно объединение в сеть образующих отвечающую систему блоков обработки данных, на которых реализованы вычислительные программы, а блоки передачи данных, соединяющие блоки обработки данных, являются стандартными и также известными, является обеспеченным определение максимального времени выполнения. При периодической оценке состояния входного сигнала, кроме того, можно при установлении моментов времени передачи телеграмм данных и начальных моментов времени для обработки вычислительных программ на соответствующих блоках обработки данных устанавливать загруженность сети, а также максимальное время выполнения. Этот процесс обозначают как глобальное расписание. Путем локального расписания, то есть установления обработки вычислительных программ, реализованных на блоке обработки данных, может происходить в значительной степени непрерывная обработка. За счет этого отвечающая система является дополнительно менее подверженной ошибкам.
Изобретение относится к отвечающей системе, то есть способной к работе в реальном масштабе времени и толерантной к ошибкам системе для обработки сигналов, с множеством блоков обработки данных, которые соединены друг с другом через блоки передачи данных. Техническим результатом является определение максимального времени выполнения обработки состояния выходного сигнала. На блоках обработки данных реализованы вычислительные программы, которые выполнены модульными из множества функциональных модулей. Отвечающая система определяет к состоянию входного сигнала согласно комплексной спецификации обработки состояние выходного сигнала. Она содержит первый банк данных, в котором запомнены максимальное время обработки каждого функционального блока, а также максимальное время передачи каждого блока передачи данных, второй банк данных, в котором запомнены координации блоков обработки данных, блоков передачи данных и вычислительных программ между собой, а также последовательности операций обработки сигналов согласно спецификации обработки, и третий банк данных, в котором запомнены параметры блоков обработки данных, блоков передачи данных и вычислительных программ. Из этих запомненных данных в синхронизирующем модуле производят определение максимального времени выполнения для получения состояния выходного сигнала. Это происходит уже перед вводом системы в эксплуатацию так, что ее способность к работе в реальном масштабе времени может быть доказана заранее. 2 с. и 6 з.п. ф-лы, 3 ил.
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
Многоуровневая подсистема обработки прерываний | 1988 |
|
SU1624448A1 |
Мультипроцессорная вычислительная система | 1991 |
|
SU1820392A1 |
Многопроцессорная система | 1987 |
|
SU1494005A1 |
Авторы
Даты
2000-06-10—Публикация
1995-12-14—Подача