Мы проектируем двухточечную кольцевую сеть Ethernet для системы сбора данных. Из-за ограничений физической системы о звездообразных/ячеистых сетях не может быть и речи.
Для передачи данных на хост мы используем каналы «точка-точка» для последовательного подключения плат с переходом пакетов от одной к другой по направлению к хосту.
Я читал о передаче и получении пакетов Ethernet с использованием MAC, но вместе с управляющими пакетами Ethernet (пауза и т. д.).
Однако я не понимаю, как отправить надежный триггер события на все 12 узлов. Мой предыдущий опыт был с USB и одним устройством, которому требовалась конечная точка триггера. Однако одновременная отправка триггера на несколько адресов Ethernet неясна.
Поскольку расстояния между узлами означают, что триггер сначала прибудет к узлу, ближайшему к хосту. Я думал о передаче кадров, содержащих флаг «пожалуйста, активируйте» и продолжительность ожидания для каждого узла. Эта пауза будет немного отличаться для каждого узла, позволяющего синхронизировать сбор данных.
Каковы мысли людей? Мы используем Xilinx Spartan 6 FPGA на каждом узле с IP-ядрами MAC, вероятно, 10-100 Мбит/с Ethernet и приличный объем буферной памяти на узел.
Спасибо. Эд