Для поддержания единого системного времени в сети стандарт SpaceWire предусматривает специальный управляющий код – маркер времени, time-code. Рассылка тайм-кодов ведется широковещательно.
Тайм-коды могут быть использованы для следующих целей:
•
СинхронизацияПериодическая отправка тайм-кодов может использоваться для синхронизации работы сети SpaceWire, разделяя время на дискретные временные интервалы, в течение которых выполняются запланированные транзакции.
•
Распространение системного времениС предоставлением этой базовой функции распределения времени протоколы прикладного уровня могут использоваться для распространения определенных значений времени и для выдачи команд, зависящих от времени и т.д.
•
Сигнализация событий в канале «точка-точка»Тайм-коды также могут использоваться для сигнализации о событиях или для передачи высокоприоритетного байта информации по каналу «точка-точка». Этот метод не следует использовать, если в сети SpaceWire есть маршрутизаторы.
В большинстве реально применяемых конфигураций сети задержка доставки тайм-кода до любого узла-абонента не превышает 1 мкс.
Общие правила распространения тайм-кодов:
• Источником тайм-кода является терминальный узел, а обрабатывают отосланный в сеть
тайм-код все устройства, получающие его.
• Каждое устройство, принявшее тайм-код, отсылает его по всем портам, кроме порта по которому оно было получено.
• Для защиты от распространения ошибочных кодов, стандарт SpaceWire предусматривает механизм проверки корректности принятого тайм-кода.
На рисунке в общем виде приведен пример распространения тайм-кода от узла-источника по сети. Цифра внутри устройства обозначает значение тайм-кода.