Для начала предложу вам общую схему устройства (верхний рисунок).
Разъяснение:
БУ - блок управления
БК - блок коммутации
ИУ - исполнительное устройство
БИ - блок индикации
Почему введен коммутатор в схему?
На самом деле коммутатор присутствует практически во всех многоблочных схемах с централизованным упралением. Коммутатор может быть аппаратным устройством (как у меня), или же программным модулем, все
зависит от реализации. Еще одной причиной, по которой БК присутствует в схеме, является возможность легкого внедрения блока индикации.
Вобщем, эта схема мне подходит, хотя любые предложения приветствуются.
Входные данные: предложенная схема.
Задача: разработать по возможности универсальный протокол обмена между всеми частями схемы.
Для решения поставленной задачи думаю нелишним будет расмотреть БК поподробнее:
Данные которые содержит БК
1. Список заданий находящийся в очереди (список занятых устройств)
2. Список заданий принятых к исполнению.
Обеспечиваемые методы (о полноте списка судить вам)
1. Добавить задание в очередь
2. Добавить OOB задание (по аналогии с TCP-IP Out Of Band пакетом) Т.е. поместить его без очереди.
3. Очистить очередь заданий принятых к исполнению
4. Сброс системы (останов)
Думаю пригодится нам и интерфейс ИУ:
1. Команду на исполнение
2. Останов
БК частично выполняет функции обеспечения асинхронного обмена данными, поэтому я предлагаю подобного рода протокол (нижний рисунок)
Вот вопросы, которые я предлагаю обсудить:
Предложения или замечания по поводу "коммутируемой" системы.
Возможные дополнения функций коммутатора или ИУ.
Протокол, каким видите его вы?
[/b]