Программное обеспечение системы сбора данных установки ВЕС
Менеджер приема данных ROM


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

В системе сбора данных установки ВЕС процессом чтения данных от регистрирующей электроники занимается менеджер приема ROM (ReadOut Manager).

ROM может работать в нормальном режиме и режиме эмуляции, для отладки программ. В нормальном режиме, данные от регистрирующей электроники поступают в буферную память МИСС 3-го уровня, и далее читаются адаптером МИСС, доступ к которому осуществляется через драйвер AMDRIVER. В режиме эмуляции, данные читаются из файла. Такой режим позволяет отлаживать систему независимо от аппаратуры установки и при этом использовать реальные данные полученные регистрирующей электроникой.

В нормальном режиме ROM работает по следующему алгоритму:

  1. Запуск программы, чтение файла настроек и конфигурация программы
  2. Ожидание данных от МИСС или команды управления
  3. Чтение данных в буфер, или выполнение команды и переход к п.2
  4. Поиск последнего события, установка флагов и статуса
  5. Выдача команды на менеджерам записи данных
  6. Спасение статуса на диск и переход к п.2

Для задания настроек программы ROM используется конфигурационный файл ROM.CFG из каталога ONL$MGR.
ROME.CFG предназначен для работы в режиме эмуляции приема.

В режиме эмуляции, читаются первые несколько сбросов из файла, на который указывает логическое имя ONL$ROM_EMU, после заполнения буфера, новые данные не читаются, а старым присваиваются новые номера.

Чтение данных в секцию буфера происходит одновременно с записью из него, при этом процесс чтения получает список свободных блоков. Это позволяет уменьшить общий объем памяти для буфера данных. Для увеличения пропускной способности, запись может вестись на несколько устройств одновременно (до 3х), очередной сброс, принятый в память, передается для записи выбранному потоку, каждый из которых обслуживает свой менеджер записи TPW. Если запись разрешена, и в буфере не осталось свободного пространства, ROM наращивает счетчик trash и оповещает оператора.

Для автоматической остановки записи используется система "барьеров", при достижении любого из них запись останавливается (при этом собственно прием данных продолжается). Значения "барьеров" задаются логическими именами ONL$TPM_LIMIT*. Остановка записи может происходить по объему принятых данных, числу событий, сбросов, записанных файлов и лент.

Процесс приема ROM может находится в одном из определенных состояний, текущее состояние доступно в глобальной секции STATUS, и показывается оператору программами управления OMON и XOMON, a так же BEC. Существуют следующие состояния:

Управление процессом приема осуществляется с помощью команд, передаваемых через глобальную секцию STATUS программами OMON или XOMON. Выполняются следующие команды:

В каждом из состояний доступны не любые команды, а только определенный набор. Например в состоянии PAUS[ED] доступны такие команды как STOP, CONT[INUE], a команда REST[ART] доступна только в состоянии STOP.

Статистическая информация о количестве принятых мегабайт, событий, сбросов, счетчики ошибок доступны через глобальную секцию статуса и отображаются такими программами как OMON, XOMON, BEC. Чтение буфера данных для поиска ошибок и диагностики возможно с промощью программы ODUMP.

Запуск программы осуществляется из командной строки символом ROM или же из меню графического интерфейса управления XOMON. Для запуска в эмуляционном режиме следует использовать символ ROME.

Диагностические сообщения записываются в журнальный файл ROM.LGB, возможна подача сигналов оператору через оповещения всех терминалов, подсоединенных к системе, и через менеджер звуковых сообщений SOM.

Исходный текст программы ROM.FOR находится в каталоге ONL$SRC:[ROM], компиляция и сборка осуществляется стандартным образом с помощью утилиты MMK или MMS, описание проекта находится в файле DESCRIP.MMS.


Last updated Jul-2004 by Solo