Локальная сеть внутри контроллера вместо параллельной шины

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

Фактически контроллер с внутренней локальной сетью будет представлять собой кластер автономных интеллектуальных модулей, объединенных этой сетью. Важной предпосылкой для использования стандартной сети из семейства современных полевых сетей "Fieldbus" в качестве межмодульной среды передачи является существенное снижение интенсивности межмодульного взаимодействия. Проведенные нами исследования и оценки показывают, что интенсивность обмена информацией между интеллектуальными модулями может снизиться в сотни раз. Это достигается за счет реализации операций ввода/вывода УСО, обработки информации и управляющих программ внутри интеллектуального модуля. Межмодульное взаимодействие в этом случае требуется только для получения информации о значениях параметров, необходимых для функционирования собственных алгоритмов управления и заданий/рапортов извне. С другой стороны, объемы отдельных ФУ могут превосходить возможности отдельного модуля, поэтому сеть внутри контроллера должна быть достаточной для обеспечения более тесных и интенсивных связей, необходимых для решения задач внутри ФУ.

На "цеховом" уровне, где представлено несколько контроллеров, стоит задача их объединения в единую систему. Это означает, что сеть интеллектуальных модулей должна быть двухуровневой и включать сеть первого ранга, образующую контроллеры ФУ из интеллектуальных модулей и сеть второго ранга, объединяющую контроллеры (кластеры) в единую систему (рис 1).

Кластер модулей, объединенных сетью первого ранга, можно назвать контроллером функциональных узлов (далее КФУ).

Важной особенностью этой архитектуры является то, что сетевой шлюз в КФУ является абсолютно прозрачным для модулей. Таким образом, система выглядит для модулей как одноранговая сеть, т.е. для любого отправителя (модуля) не имеет значения, где физически находится получатель сообщения - в том же КФУ, или в другом. Это еще одно неоспоримое достоинство предлагаемой архитектуры.

Рис. 1. Сеть интеллектуальных модулей

Выбор стандартных локальных сетей для объединения интеллектуальных модулей внутри КФУ и полное исключение традиционных параллельных шин, как средства межмодульной коммуникации, позволяет без дополнительных затрат решить ряд проблем, неразрешимых для контроллеров с традиционной архитектурой. В этом состоит суть предлагаемого решения для организации архитектуры контроллера, адекватной предъявляемым требованиям.

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

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

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

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

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

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

В-шестых, скорости передачи. Параллельные шины пока считаются самыми быстродействующими. Сегодня появилось несколько технологий последовательной передачи данных, которые превосходят по быстродействию любые существующие параллельные шины и обеспечивают передачу данных со скоростью до 400 Мбайт/сек и даже более [4]. Тот факт, что последовательные шины заменят в ближайшем будущем сегодняшние параллельные шины межмодульного взаимодействия в компьютерных системах, был осознан еще в начале 90-х годов. Сегодня видна определенная тенденция развития средств вычислительной техники в этом направлении [4].

В контроллерах для автоматизации типичных технологических процессов такие скорости не требуются - шина с производительностью в 2 Мбайта/сек вполне достаточна для традиционного контроллера с неинтеллектуальными модулями. Эта оценка скорости основана на нашем практическом опыте и опыте использования рядом фирм технических средств с такими показателями производительности шины, например PC-совместимые контроллеры с 8-ми разрядной ISA-bus. Если же все модули в контроллере будут иметь достаточный интеллект для автономного решения прикладных задач управления, сбора и обработки информации, то требуемый поток обмена данными между такими модулями снизится примерно на два порядка. Анализ исходных текстов программ "драйверов" ввода/вывода позволяет оценить количество элементарных операций, выполняемых процессором, для считывания и первичной обработки, например, одного аналогового преобразования. Как правило, для обработки одного измерения, в "драйвере" исполняется около сотни процессорных инструкций. Таким образом для межмодульной коммуникации будет достаточно иметь среду передачи с производительность порядка 20 Кбайт/сек или что тоже самое 200 Кбод с учетом 20% накладных расходов протоколов последовательной передачи данных. Эта оценка говорит о том, что с точки зрения скоростных характеристик в качестве среды передачи внутри контроллера может использоваться практически любая из стандартных детерминированных локальных сетей.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: