
Монитор MIL-STD-1553B. v4.00. ЗАО 'ЭЛКУС', СПб, 1997-2008.
Работает с платами TX1/TE1, TX6/TE6, TA1.

Формат вызова: mt1553b.exe параметр1 [параметр2] ...

Параметры (в круглых скобках - значения по умолчанию):
? - эта справка;
d<НомерУстройства(dec)> - задает номер устройства, начиная с 0 (нет);
n<ИмяФайла> - задает файл с результатами работы (nmonitor.dat);
l<ДлинаБуфера(dec)> - задает размер буфера сообщений программы (l1024);
f<СловоЗаписи(hex)> - включает режим предзаписи указанного слова во все
     ячейки памяти монитора (выкл);
b<+/-> - включает/выключает регистрацию групповых сообщений (b+);
t+,t+0 - включает программную регистрацию времени сообщений (выкл);
th,th<0-6> - включает аппаратную регистрацию времени сообщений (выкл);
z<Сообщений(dec)> - задает число сообщений, записываемых в файл одновременно;
j<Шаг(dec)> - задает число баз между прерываниями (j0);
q<0/1> - задает режим очереди MT (q1);
ar<ДиапазонАдресовОУ(dec)> - задает диапазон адресов оконечных устройств,
     для которых производится регистрация сообщений; пример задания
     диапазона адресов: ar2,5-10,17,28-30 (ar0-30);
o<ДиапазонАдресовДанных(hex)> - задает диапазон адресов данных в канале,
     которые должны отображаться на экране при мониторинге; пример
     задания диапазона: o0E21,5223-5226 (выкл);
m<b/r/m> - задает режимы буферизации(b), регистрации(r),
     только мониторинга(m) (mr).

Пример: mt1553b d0 ndata.sav l2000 fFFFF ar0-9,20-29
Пример: mt1553b d1 th


Программа mt1553b.exe позволяет сохранить в текстовом файле для дальнейшего 
просмотра и анализа траффик в резервированной шине MIL-STD-1553B. Для
правильной работы программы на плате должен быть правильно установлен 
джампер, задающий использование или неиспользование аппаратного бита в 
системе (см. Техническое описание конкретной платы). 

Программа работает с платами ISA (TX1-PC, TX1-MP, TX1-104, TX1-B, TE1-PC,
TE1-IPI, TE1-MP, TE1-104, TX6-PC, TE6-PC, TA1-PC, TA1-104, TAM1) и платами
PCI (TE1-PCI, TE1-PCI2, TE1-CPCI-1, TE1-CPCI-2, TE6-PCI, TA1-PCI, TA1-PCI4).

Программа может работать в режимах регистрации, буферизации, мониторинга. 

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

По умолчанию программа запускается в режиме регистрации. Если скорость обмена 
в канале превышает возможности программы при работе в режиме регистрации, 
можно попробовать использовать режим буферизации. 

В режиме буферизации программа сначала заполняет полностью буфер в памяти 
ПК, а потом записывает его целиком на диск. Так как программа не выполняет 
дисковые операции в момент активной работы с каналом, потери сообщений и
останов по причине переполнения буфера в ОЗУ платы менее вероятны, но 
максимальное число регистрируемых сообщений определяется длиной буфера в ОЗУ 
ПК. Останов программы в этом случае происходит по заполнению этого буфера или 
по нажатию клавиши. Ограничением на число регистрируемых сообщений также 
служит и размер свободного пространства на диске. Программа не проверяет при 
записи на диск наличие свободного пространства!

В режиме мониторинга программа только отображает на экране данные, заданные
параметром o.

Результирующий файл имеет имя monitor.dat, это имя можно изменить с помощью 
параметра n.

Параметр l задает размер буфера в ОЗУ ПК.

Поскольку аппаратура плат TX не позволяет определить реально принятое число 
слов в сообщении, размер принятого сообщения определяется на основе анализа
командного слова сообщения. Если сообщение принято с ошибкой, отображенное 
число слов в файле результата может не соответствовать реальному. Для 
уменьшения такой неопределенности можно пользоваться режимом предзаписи 
слова во все ячейки ОЗУ платы (параметр f). В этом случае реально принятые 
слова заменят заданное слово предзаписи, если же какие-то слова не были 
получены, на их месте отобразится слово предзаписи. Понятно, что выбирать 
это слово надо таким образом, чтобы оно не совпало со словами в сообщениях.
Включение данного режима уменьшает скорость работы программы.

Аппаратура плат TX не содержит средств регистрации времени получения
сообщений. С помощью параметра t можно включить программный алгоритм
определения времени. Включение данного режима уменьшает скорость работы
программы. Сам алгоритм имеет несколько ограничений. Регистрация времени
происходит в момент получения программой прерывания. Если по какой-либо
причине (например, работа с диском) произошла задержка получения прерывания
- время будет искажено на величину этой задержки. Если же произойдет
пропуск прерывания (два или несколько сообщений будут зарегистрированы по
прерыванию от последнего из них) - для сообщений с пропущенным прерыванием
будет отображено нулевое время относительно предыдущего сообщения.
                                                       
Для плат TA можно включить аппаратный таймер для регистрации времени прихода
сообщений с помощью ключа th. При этом, также как и в случае с программным
таймером, регистрируется время окончания сообщений. Ключ th включает таймер 
с микросекундной точностью и отображение времени в микросекундах. Ключи с
th0 по th6 включают таймер с делителем на 2**N (N=0..6, th0 - микросекундная
точность) и отображением времени в миллисекундах.

Если скорость обмена в канале превышает возможности программы при работе 
с настройками по умолчанию, можно попробовать изменить настройки, задаваемые 
через параметры z, j, q.

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

Параметр j позволяет искусственно уменьшить число прерываний, формируемых 
платой, что снижает нагрузку на подсистему прерываний. По умолчанию 
прерывания формируются на каждое принятое монитором сообщение. Если задан 
ненулевой параметр j, то программное определение времени сообщений будет 
недоступно для пропущенных прерываний. Аппаратный таймер на платах TA 
работает независимо от параметра j.

Параметр q задает внутренний режим (0 или 1) обработки очереди сообщений. 
В некоторых случаях большого траффика в канале может оказаться лучше не тот 
режим, что задан по умолчанию.

Кроме стандартного режима одного монитора, начиная с версии 4.00, программа 
позволяет запускать два монитора параллельно. По запросу возможна поставка 
программы для работы с более чем двумя мониторами. Для запуска программы в 
режиме с двумя мониторами надо задать оба номера устройств, например:
mt1553b d0 d2

Также возможен запуск нескольких экземпляров программы для мониторинга разных 
каналов раздельно.

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


     Представление результирующего файла программы монитора mt1553b.exe.

Программа mt1553b.exe формирует результирующий файл в кодировке DOS. 
Программа mt1553be.exe формирует результирующий файл на английском языке. 

Все сообщения регистрируются в порядке их поступления из канала. Каждое
сообщение имеет свой порядковый номер. 3 цифры в начале каждого сообщения - 
номер устройства:номер сообщения от этого устройства:сквозной номер сообщения. 
В прямоугольниках показаны источник и приемник сообщения - контроллер канала 
(КК) или оконечное устройство (ОУ) со своим адресом (dec). Стрелка указывает 
на направление передачи информационных слов (слов данных) или команды 
управления. Над стрелкой показан активная линия А или В, под стрелкой 
выводится количество информационных слов (ИС). Команды управления справа от 
прямоугольников расшифровываются по их названию и в рамке ОУ отмечаются 
комментарием "режим". Для команд обмена данными в рамке ОУ указан подадрес 
(dec) приема/передачи ИС. Групповые комады отмечаются комментарием "Всем ОУ" 
на правой рамке.

Если сообщение достоверно и в ответном слове не установлен ни один
бит, то со следующей строки выводятся командные (КС), ответные (ОС) и
информационные (ИС) слова в порядке их прохождения по каналу. В противном
случае сначала дается конкретное предупреждение об ошибке или установке
бита в ОС.

КС, ОС и ИС представлены в (hex) формате, кроме того КС и ОС раскрыты
по полям в виде:
     КС:  [адрес ОУ(dec)]-[T/R(bin)]-[подадрес(dec)]-[число слов(dec)]
       T - бит прием/передача = 1,  R - бит прием/передача = 0
     ОС:  [адрес ОУ(dec)]-ME-0-SR-000-BC-BS-SF-DN-TF
       TF - бит "Неисправность ОУ"
       DN - бит "Принято управление интерфейсом"
       SF - бит "Неисправность абонента"
       BS - бит "Абонент занят"
       BC - бит "Принята групповая команда"
       000- резервные биты
       SR - бит "Запрос на обслуживание"
       ME - бит "Ошибка в сообщении"

Пример результирующего файла на 22 сообщения (использовалось устройство с 
номером 2):


 2:0:0:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Разблокировать передатчик
      L=======-         L=======-
Установлен бит в ОС.
      КС: 57E5    10-T-31-05
      ОС: 5001    10-0-0-0-000-0-0-0-0-TF

 2:1:1:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Блокировать бит неисправности ОУ
      L=======-         L=======-

      КС: 57E6    10-T-31-06
      ОС: 5000    10-0-0-0-000-0-0-0-0-0

 2:2:2:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Разблокировать бит неисправности ОУ
      L=======-         L=======-
Установлен бит в ОС.
      КС: 57E7    10-T-31-07
      ОС: 5001    10-0-0-0-000-0-0-0-0-TF

 2:3:3:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Синхронизация
      L=======-         L=======-
Установлен бит в ОС.
      КС: 57E1    10-T-31-01
      ОС: 5004    10-0-0-0-000-0-0-SF-0-0

 2:4:4:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Блокировать передатчик
      L=======-         L=======-
Установлен бит в ОС.
      КС: 57E4    10-T-31-04
      ОС: 5008    10-0-0-0-000-0-BS-0-0-0

 2:5:5:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦<--------¦ режим ¦  Передать векторное слово
      L=======-  1 словоL=======-
Установлен бит в ОС.
      КС: 57F0    10-T-31-16
      ОС: 5100    10-0-0-SR-000-0-0-0-0-0
      ИС: 0000

 2:6:6:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Принять управление интерфейсом
      L=======-         L=======-
Установлен бит в ОС.
      КС: 57E0    10-T-31-00
      ОС: 5002    10-0-0-0-000-0-0-0-DN-0

 2:7:7:
      г===КК==¬ линия A гВсем ОУ¬
      ¦       ¦-------->¦ режим ¦  Установить исходное состояние ОУ
      L=======-         L=======-

      КС: FFE8    31-T-31-08

 2:8:8:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Передать ответное слово
      L=======-         L=======-
Установлен бит в ОС.
      КС: 57E2    10-T-31-02
      ОС: 5010    10-0-0-0-000-BC-0-0-0-0

 2:9:9:
      г===КК==¬ линия A г=ОУ 00=¬
      ¦       ¦-------->¦ режим ¦  Начать самоконтроль ОУ
      L=======-         L=======-
Нет ответного слова (Ошибка паузы перед ОС).
      КС: 07E3    00-T-31-03
      ОС: ----

 2:10:10:
      г===КК==¬ линия A г=ОУ 00=¬
      ¦       ¦-------->¦ режим ¦  Начать самоконтроль ОУ
      L=======-         L=======-
Нет ответного слова (Ошибка паузы перед ОС).
      КС: 07E3    00-T-31-03
      ОС: ----

 2:11:11:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦<--------¦ режим ¦  Передать слово встроенного контроля
      L=======-  1 словоL=======-

      КС: 57F3    10-T-31-19
      ОС: 5000    10-0-0-0-000-0-0-0-0-0
      ИС: 0000

 2:12:12:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦<--------¦ режим ¦  Передать последнюю команду
      L=======-  1 словоL=======-

      КС: 57F2    10-T-31-18
      ОС: 5000    10-0-0-0-000-0-0-0-0-0
      ИС: 57F3

 2:13:13:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦---------¦       ¦  
      L=======-         L=======-
Ошибка формата.

      КС: 53E1    10-R-31-01

 2:14:14:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦ режим ¦  Принять управление интерфейсом
      L=======-         L=======-
Нет ответного слова (Ошибка паузы перед ОС).
      КС: 5400    10-T-00-00
      ОС: ----

 2:15:15:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦-------->¦падр 17¦  
      L=======- 32 словаL=======-

      КС: 5220    10-R-17-00
      ИС: 0000 0001 0002 0004 0008 0010 0020 0040 0080 0100
          0200 0400 0800 1000 2000 4000 8000 F018 0F19 A520
          A521 A522 A523 A524 A525 A526 A527 A528 A529 A530
          A531 A532
      ОС: 5000    10-0-0-0-000-0-0-0-0-0

 2:16:16:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦<--------¦падр 17¦  
      L=======- 29 слов L=======-

      КС: 563D    10-T-17-29
      ОС: 5000    10-0-0-0-000-0-0-0-0-0
      ИС: AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA
          AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA
          AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA AAAA

 2:17:17:
      г===КК==¬ линия A г=ОУ 01=¬
      ¦       ¦-------->¦ режим ¦  Синхронизация с ИС
      L=======-  1 словоL=======-
Установлен бит в ОС.
      КС: 0BF1    01-R-31-17
      ИС: 5000
      ОС: 0905    01-0-0-SR-000-0-0-SF-0-TF

 2:18:18:
      г=ОУ 10=¬ линия A г=ОУ 01=¬
      ¦падр 20¦-------->¦падр 18¦  
      L=======-  5 слов L=======-
Установлен бит в ОС.
      КС: 0A45    01-R-18-05
      КС: 5685    10-T-20-05
      ОС: 5105    10-0-0-SR-000-0-0-SF-0-TF
      ИС: 5555 5555 5555 5555 5555
      ОС: 0905    01-0-0-SR-000-0-0-SF-0-TF

 2:19:19:
      г=ОУ 10=¬ линия A гВсем ОУ¬
      ¦падр 17¦-------->¦падр 17¦  
      L=======-  2 словаL=======-

      КС: FA22    31-R-17-02
      КС: 5622    10-T-17-02
      ОС: 5000    10-0-0-0-000-0-0-0-0-0
      ИС: AAAA AAAA

 2:20:20:
      г=ОУ 10=¬ линия A гВсем ОУ¬
      ¦падр 17¦-------->¦падр 17¦  
      L=======-  2 словаL=======-
Несовпадение полей числа слов в двух КС.
      КС: FA32    31-R-17-18
      КС: 5622    10-T-17-02
      ОС: 5000    10-0-0-0-000-0-0-0-0-0
      ИС: AAAA AAAA

 2:21:21:
      г===КК==¬ линия A г=ОУ 10=¬
      ¦       ¦<--------¦падр 17¦  
      L=======-  1 словоL=======-
Нет ответного слова (Ошибка паузы перед ОС).
      КС: 5621    10-T-17-01
      ОС: ----
      ИС: Недостоверны.


(c) ЗАО "Электронная компания ЭЛКУС", 2006-2008.
