MIL-STD-1553: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Введена аппаратная реализация стандарта
Описан протокол
Строка 33:
 
== Используемый протокол ==
Каналы обмена информацией, выполненные по MIL-STD-1553B, имеют шинную организацию. Есть одна общая магистраль, а к ней, через гальваническую развязку, подключаются абоненты. Количество абонентов может достигать 31. Протокол предусматривает резервирование. То есть каждый из абонентов может быть подключен к двум каналам — основному и резервному, которые в иностранной литературе обозначаются как channel A и channel B соответственно.
{{заготовка раздела}}
 
Все абоненты на магистрали подразделяются на три вида:
 
* КК — контроллер канала. Центральное устройство системы. Отправляет командные слова (КС) и информационные данные остальным абонентам. На одной магистрали может быть только один КК.
* ОУ — оконечное устройство. Одно из 31 периферийного устройства. Ожидает командные слова от КК, обрабатывает их и отдает ответное слово (ОС) обратно на КК. Каждый из ОУ имеет уникальный адрес разрядностью 5 бит
* М — монитор. Нечто вроде отчетного устройства. Следит за информацией в канале. Собирает статистику и пр. Монитор — безадресное устройство и не выдает в магистраль никакой информации. В данном случае монитор можно сравнить с «черным ящиком» самолета, который записывает переговоры пилотов и показания датчиков.
 
Стандарт MIL-STD-1553B предусматривает возможность организации иерархической системы, то есть каждое из ОУ может быть «интеллектуальным», а значит, является контроллером канала со своими оконечными устройствами нижнего уровня.
 
Рассмотрим физический уровень подключения абонента к магистрали. Стандарт предусматривает два вида подключения — с одинарной и двойной трансформаторной развязкой. Выбор схемы подключения определяется расстоянием от абонента до магистрали (рис. 2). Здесь IT — изолирующий трансформатор; CT — согласующий трансформатор; Ri1 = 55 Ом; Ri2 = 0,75Zo; Zo — волновое сопротивление линии магистрали (characteristic impedance), которое составляет 70-85 Ом на частоте 1 МГц; Vp-p — значение напряжения peak-to-peak (размах).
 
Под абонентом понимается цифровая система управления для организации и обработки пакетов протокола на логическом уровне, а также драйвер физического уровня. В качестве цифровой системы управления может использоваться микроконтроллер или ПЛИС. Драйвер — это устройство, предназначенное для преобразования уровней напряжений в магистрали в логические уровни КМОП или ТТЛ.
 
Теперь перейдем к логическому уровню протокола.
 
Информация в мультиплексном канале передается с частотой 1 МГц словами по 20 бит. Слова передаются пакетами. Количество слов в пакете может быть разным, в зависимости от вида пакета (мы рассмотрим это далее).
 
Необходимо отметить, что вся информация на магистрали передается в коде «Манчестер-2». Это означает, что наша цифровая система управления должна иметь в своем составе кодер и декодер этого кода.
 
«Манчестер-2» относится к самосинхронизирующимся кодам и имеет нулевую постоянную составляющую. Передача нулей и единиц определяется не уровнем, а переходом с уровня на уровень (рис. 3).
 
Передача логических нуля и единицы в коде «Манчестер-2»
 
Согласно стандарту этого протокола слова могут иметь три различных формата:
 
* командное слово (КС);
* информационное слово (ИС);
* ответное слово (ОС).
 
Битовый состав этих слов приведен на рис. 5. Командное слово передается от контроллера канала оконечному устройству. Командное слово содержит в себе адрес ОУ (Address Remote Terminal, ADDR RT), которому предназначена информация, субадрес (sub-address, SUBADDR) и сколько именно слов (N) будет передано на это ОУ или принято с него. Бит приема-передачи (Write-Read, WR) говорит о том, в каком направлении будут передаваться последующие за командным словом информационные слова. Если WR = 0, контроллер канала передает данные на оконечное устройство. Если WR = 1, контроллер канала принимает данные от оконечного устройства.
 
Если командное слово содержит не субадрес, а признак команды (Command Indication, CI), то вместо количества слов передается команда (Command, COM).
 
Информационное слово содержит только данные разрядностью 16 бит и может передаваться как от контроллера канала к оконечному устройству, так и в обратном направлении. Что и понятно — информацию нужно передавать как на периферию, так и на центральную машину.
 
Ответное слово передается оконечным устройством на контроллер канала. Оно необходимо для подтверждения того, что периферия приняла пакет. Для того чтобы контроллер канала знал, от кого пришло ответное слово, в нем содержится адрес ОУ. Остальные биты несут служебную информацию:
 
* A — признак ошибки в сообщении.
* B — инструментальный бит.
* C — запрос на обслуживание.
* X — зарезервировано, может использоваться по усмотрению разработчика.
* D — признак принятия групповой команды.
* E — признак занятости абонента.
* F — флаг неисправности абонента.
* G — признак принятия управления каналом.
* H — флаг неисправности.
 
В каждом из этих слов используется бит паритета (Parity, P). Бит паритета должен иметь такое значение, чтобы общее количество единиц в слове (за исключением синхросигнала) было нечетным. Если поле ADDR RT имеет значение «11111», то посылка адресована всем оконечным устройствам. Именно это объясняет то, что всего оконечных устройств может быть не 32, а 31.
 
Признак команды CI имеет значение «00000» или «11111». Все остальные значения — это субадрес (SUBADDR). Использование дополнительных команд управления позволяет, например, блокировать и разблокировать передатчик резервной линии. (Подробно об этом написано в стандарте.)
 
Следует упомянуть инструментальный бит (B). Использование инструментального бита позволяет мониторам отличать командные слова от ответных. Значит, при использовании этого бита количество возможных значений SUBADDR сокращается с 30 до 14. Если в поле «количество слов» N указана цифра 0, то имеется в виду 32 слова.<ref>{{Cite web|url=https://www.kit-e.ru/preview/pre_123_12_13_milstd_mk.php|title=Разработка контроллера протокола MIL-STD‑1553B на ПЛИС.|author=Дайнеко Дмитрий|publisher=Компоненты и Технологии}}</ref>
<br />{{заготовка раздела}}<br />
== Концептуальное описание ==